Saturday, December 05, 2015

Online Dating Made this Woman a Pawn in a Global Crime Plot

Toward the end of our conversation, I asked Elrod what she would say to McGregor—or, rather, the Yahoo Boy who played McGregor—if she were given the opportunity. She chewed nervously on her right index finger as she confessed that she has many, many questions for the man. But the first one she mentioned was not how he faked his Scottish accent or what became of her life savings or how many other women he was stringing along while they were “engaged.” The question at the forefront of her mind was something far more basic: “Was it always a scam?”

Sunday, November 22, 2015

Make it Stick - Peter Brown


  • Useful learning is EFFORT-FULL. It's difficult, but worth it.
  • We are BAD JUDGES of when we're learning well and not.
  • REREADING TEXT and BATCHED PRACTICE are not supported by research.
  • RETRIEVAL PRACTICE is what you need - a simple quiz will do wonders for you.
  • SPACE OUT PRACTICE with breaks to learn well.
  • TRY TO SOLVE PROBLEMS BEFORE BEING TAUGHT THE SOLUTION. Good for you.
  • Build your learning on a FOUNDATION OF PRIOR KNOWLEDGE.
  • ELABORATE on what you just learned by expressing in your own words. If you've encountered the Udacity Git course with Caroline Buckey and Sarah Spikes, you've been told to write down reflections because it's good for you!
Study smarter : https://www.youtube.com/embed/IlU-zDU6aQ0 (Marty Lobdell)

Saturday, November 14, 2015

WT* is FB Up To?

Facebook is seeking an Electronics Engineer to join our Infrastructure Team. We believe connecting the world is one of the greatest challenges of our generation, and that everyone deserves access to the knowledge, tools and opportunities that come from being connected. That’s why we, along with other tech companies, launched Internet.org, a global partnership to make the Internet available to the two thirds of the world’s population that doesn’t have it. The Connectivity Lab team has been working on developing new platforms for connectivity on the ground, in the air and in orbit. For all of these systems, the team is looking at Free-space optical communication, a way of using light to transmit data through space using invisible, infrared laser beams. To make this a reality, we need to scale our infrastructure and ensure that it operates efficiently so that we can deliver innovate services. Join us as we build the technical foundation upon which the world shares and connects. This position is located in our Woodland Hills office (near Los Angeles).

Responsibilities

  • Hardware design for Free-Space Optical (FSO) and Radio Frequency (RF) communication terminals
  • Interface with software, mechanical, power, thermal, and hardware engineers to understand system architecture
  • Perform component and system level testing in both laboratory and operational environments



Requirements


  • B.S. or M.S. in Electrical Engineering or related technical discipline
  • Experience in analog and digital circuit design, schematic capture, and PCB layout
  • Knowledge of transmission line theory, high-speed circuit design, RF, electrical concepts, and analysis tools
  • Experience with hardware in the loop testing and validation, including the use of network test equipment such as spectrum analyzers, oscilloscopes, and frequency synthesizers
  • Experience with both RF and optical testbed lab operation and procedures desired
  • Experience in RTL design and implementation on an FPGA, including synthesis and simulation tools desired
  • Knowledge of Cadence Allegro, Mentor Graphics PADs, Altium Designer, Verilog, System Verilog, C, C++, *nix

Tuesday, November 10, 2015

Thank You WSJ ... Nehal Chopra

Get em while they're down. Ladies, wouldn't you like to see a big, sleazy company that is responsible for more pollution than all the passenger cars in the world combined (watch Rose George on TED) go out of business?

Not going to happen. So, given that they'll stick around forever, and thrive, why not buy their stock now and make a buck or two?

For a change, it's the male analyst who takes down the overpaid female fund manager. Congratulations Andrew Left. Sorry Nehal - I'm sure there are jobs in India though. You can try the H1 thing again next year.

Sunday, November 08, 2015

The 1% - Thanks to Prof. Rubik

An easy one - but not sure if it'll lead to any broad transfer (that is, will this facility lead to better performance in other areas?). It did work out my mnemonic creation ability though.. Next, need to get into speed cubing. I'm a laugh - I can do the thing walking to the grocery store, but I'm taking 10 minutes :)


Here are the mnemonics (add a comment to suggest better ones!)

ri di rd for putting white corner pieces correctly
(Duolinguist has a good one - Ride the Dirty Red Dragon) (that doc is ood, but, this one, if a bit long w, works)

Then, for a top to right re-positioning of a middle layer edge piece, it's

ur i(ur) i(uf) uf -- probably better remembered as UR i(UR UF) UF -- so you basically only need UR, UF at the tip of your tongue.

For a top to left re-positioning of a middle layer edge piece, it's

Wiley Uluf used WiFi (UiLi UL UF UiFi)

Then, if you have just one yellow center piece or the rev-L, then it's

The FURry doc said URF : FUR i(URF)

If it's a horizontally oriented straight yellow line, it's

Beat a straight path to the FRUit tree to find the it's rough :

FRU i(RUF)

Now you have your cross.

If you have no corner pieces correct, you orient one of the side yellows at 8 o'clock

If you have one correct, in addition to the cross, put that (top edge of course) at
7 o'clock. Note that 7 o'clock top-edge is different from 7 o'clock vertical faces..
Vertical faces go from 12 o'clock to 11 o'clock. The top edges are 12, 1, 3, 4, 6, 7, 9, 10

If you have 2 corners correct, then you need to orient one vertical yellow facing you
at 7 o'clock

Do : Are you Rui's sister? are you Uri? RU RiU RU URi
(Riu is Rui's sister - I actually know somoene called Rui)

Do this till you get the top face completely jaundiced.

Then, see how many corner pieces are correct. If it's none, do the below move once.

If it's one, same gun. If it's 2, then if it's
AB
CD

for the corner pieces, you need to position so that AB are correct, or AD are correct.
Then do the move :

Rif and Ribb Arfie, Ribb Ararui (yes, I know. If you have a better one, do share)

This is : RiF RiBB RFi RiBB RRUi

You may have to do this more than once. Once done, you'll only have the center pieces to
work on. For that, you have to see whether you want them to move clock wise or counter.

For clockwise :

Inside FF and F (Father Franklin is Famous)

Uluf split himself watching a rif of FLIR. (Uluf becomes UL something UF)
Something is RiF FLiR

So : FF UL RiF FLiR UF F

May have to do it more than once.

For counter clockwise, you just invert the U's in Uluf --> UiLUiF

Now, what if you wanted to get into speed cubing? Where should you start?

🧩 Drill #1 — Cross Mastery (White Cross on Bottom)

Goal:
Solve the white cross on the bottom layer blindly and consistently under 10 seconds.

Why this first:
Every speedcubing method (CFOP, Roux, ZZ, etc.) depends on quick and intuitive cross building. The cross is the foundation for every solve, and getting it efficient and instinctive will make all other progress easier.


Read more

🧠 How to Practice

  1. Scramble normally (random scramble).

  2. Before turning, look for how to solve the white cross in your head. Don’t start turning until you can see the full 4-edge solution.

  3. Execute the cross on the bottom, not top. This trains your spatial awareness for full inspection planning.

  4. Time yourself only for the cross stage. Aim for 15 s → 10 s → 7 s.


📈 Focus Points

  • Keep the white center on bottom from the start — no cube rotations mid-solve.

  • Minimize move count: optimal crosses are often 6–8 moves.

  • Learn to plan ahead during the 15-second WCA inspection.


⏱️ Drill Routine

  • 10 scrambles × 3 rounds daily.

  • After each round, review your cross solutions — can you do it in fewer moves?

  • Use tools like csTimer or CubeSkills cross trainer to visualize optimal crosses.


Once you can reliably execute a white cross under 10 s with < 8 moves average, we’ll move to the F2L pair-insertion drill — that’s the next natural step.


Does it matter what cube you use?

You bet! Speed cubes are:

🧩 1. Mechanically Optimized for Speed

Speed cubes are designed to turn fast and smoothly without locking up. They have:

  • Corner-cutting: pieces can twist up to ~45° out of alignment and still complete a turn.

  • Anti-pop design: pieces lock into a central mechanism so the cube doesn’t explode during fast moves.

  • Adjustable tensioning: you can tighten or loosen the springs under the center caps for your preference.

⚙️ 2. Magnetic Stabilization

Read more

Most modern speed cubes have small magnets inside the edges and corners that gently snap the faces into place.
→ This gives precision and stability at high speed — like auto-centering for your fingers.

🪶 3. Lightweight and Smooth Materials

They use engineered plastics and advanced lubricants (like silicone-based lubes) to reduce friction.
Traditional Rubik’s cubes can feel “gritty” or stiff in comparison.

🎛️ 4. Customization

High-end models (like GAN, Moyu, or QiYi) include:

So, what to choose?

  • MoYu RS3 M V5 — Widely praised for offering modern features (magnetic, adjustability) at a budget-friendly price. Often called one of the best value options.

  • MoYu RS3 M 2020 Magnetic — A classic “starter speed cube” that many people use as their first upgrade from plain cubes.

  • QiYi Warrior M — Very affordable and good performance for the price. Great if you want to test speedcubing without a big investment.

  • Rubik’s Magnetic Speed Cube (official) — For people who like the official brand but want something built for speed.

  • MeiLong 3×3 M — Ultra-budget magnetic cube. You get very good performance relative to cost.

  • SCS Speed Cube Pro 3×3 Magnetic — Mid-tier; good stepping stone toward stronger cubes.

  • GAN 356 M — Excellent “stepping stone to flagship” cube. Very polished, reliable.

  • GAN 11 M Pro — A full-fledged flagship cube with a lot of customization. Might be overkill for a beginner, but it's great if you want a cube you’ll grow into.


💡 Tips When Choosing and Using a Beginner Cube

  • Start modest: Don’t feel pressured to jump straight to top-tier flagship cubes. A $10–$25 good speed cube will let you learn mechanics, algorithms, and finger tricks without frustrating stiffness.

  • Adjust it: Use the tensioning or spring system to find a feel you like. Looser is easier to turn fast; tighter gives more control.

  • Lubricate carefully: A little silicone-based cube lube (a drop or two) can greatly improve smoothness.

  • Practice maintenance: Occasionally take it apart, clean, re-lube, and reassemble. This keeps performance high as you get more use.

  • Try different feels: As you improve, you’ll learn whether you like a “fast and loose” cube or something more stable and controlled.

Saturday, October 31, 2015

One Line Lessons

My experience with learning resources like audio-books, or just books, which I keep mentioning to people, is that you only take away one or two sentences from each. But, those things are like minders by your side - helping you be more effective in your day to day decision making or execution than you would be otherwise. Finally, I'll start a formal compilation (triggered by self-awareness of how I was attempting to skim through Palo Alto Networks' cyber security call-to-action)

Princeton Reviw prep for the SAT : For reading comprehension, first, just read the first and last sentences of each para.
Steve Jobs, by Walter Jacobson : People don't k what they want until you s it to them. Only let A players on your team. Once A players see the B and C players are slacking off, it will drag them down. Rounded rectangles.
The Upside of Irrationality by Dan HairyEli : Human beings adapt very well - this is why you need a higher dose of something you like - like booze. So, if it's an activity you like (showering, watching TV, etc) make sure you stop so you DON'T adapt. If it's something you don't enjoy - like doing taxes, cleaning - make sure you STICK WITH IT so you DO adapt.
Succeed by Heidi Grant : For complex goals (starting a company, etc), think about the next step (forget the real motivation). For simple goals (cleaning your room) think about the why, the real reason you want to.
Liespotting by Pamela Meyer : A lie usually uses a long answer to a question that can be answered with a short sentence.
Ashok Goel (KBAI) : If knowledge is power, so is organization.

Saturday, October 24, 2015

We Love you Joe Wong!

My name is JW. But, to most people, I am Who?
Hu is actually my mother's maiden name, and the answer to my credit card security question.
I just want to reassure everyone that I am invited here tonight.
I grew up in China. Who didn't? And my childhood memories are ruined by my childhood.
Like all immigrants, I too want my son to be the President.
My son says, "Dad, why do I have to learn 2 languages?" I say, "Son, because, when you become President, you'll have to sign legislative policies in English, and talk to debt collectors in Chinese."
Obama was conducting 2 wars when he was awarded the Nobel Peace P. And he accepted it. You can't be more badass than that. The only way you could be more badass is if you took the Nobel P P money and gave it to the military.
I was born in the year of the Horse and that is why I am a naysayer.
America's #1, because we won the World Series every year.
I have a quick solution for global warming. I will switch from Fahrenheit to Celsius.
I believe open dialogue and unilateralism are too expensive. So, if elected, I will switch to text messaging. I will text our allies even to say Hi. And I will text our enemies when they are driving.

On Ellen :

Are you guys afraid of the economy? I'm not. I grew up young, you see. If I become poor again, I'll just feel young.

To become a citizen I had to answer some questions :

Who was Benjamin Franklin? Uhhh... the reason our convenience store gets robbed.
What is the 2nd amendment? Uhh... the reason our convenience store gets robbed.
What is Row vs Wade? Uhh...  2 ways of coming to the United States.

Anything iCanDo, You Can Do Better

Have to give these guys credit for sticking around so long - probably been 20 years..

http://icanprogram.com/09tk/lesson6/lesson6.html

Their recipe for displaying the contents of a text field :

proc saveFile { } {
set fn "saveFile"
global f

set myFile [tk_getSaveFile]

puts stdout [format "%s:myFile=<%s>" $fn $myFile]

set line [$f.t get 1.0 1.end]
for {set i 2} {[string length $line] > 0 } {incr i } {
puts stdout [format "line=<%s>" $line]
set line [$f.t get $i.0 $i.end]
} ;#end for loop
} ;#end saveFile 

Here's my tweak that's much more elegant (off the web of course) :

set nLines [$f.t count -lines 1.0 end]
for {set i 1} { $i <= $nLines } {incr i } {
set line [$f.t get $i.0 $i.end]
puts stdout [format "line : %s" $line]
} ;#end for loop
} ;#end saveFile

Thursday, October 15, 2015

Unity for All Mankind

Who are the geniuses behind Unity 3D? Seems, with my limited ken, an incredible piece of work.

Some people, somewhere, decided, wouldn't it be nice to do X, and wrote a proposal for it and got money and hired people and did it! Supermen.

Tuesday, October 06, 2015

Maker Faire SD

3D Printing is in - as it has been for 2+ years - at MF at least.

Astroprint is now applying the cloud to it - so you can print directly from your smartphone. Someone was talking about content being the next big thing in 3D. I've heard of ABS and PLA filament. Now, there seems to be PET. I saw a couple of prints that were metal - using a laser to do something to the powder - a rocket engine..

As usual, my to-do list grew bigger and my feeling of having wasted my life as well... Saw this young Asian guy talking about getting motors from China and hacking them to use for go-karts - with a DC brushless motor, you can drive them as hard as you want if you can get the heat out. He adds epoxy to motors, replaces ball bearings, you name it - and no formal degree yet. I've wasted my life.

There's San Diego Startup Weekend I'm looking at seriously : http://www.up.co/communities/usa/san-diego/startup-weekend/6504

DIY genetics hacking biology is getting bigger - at least in mindshare.. People know who Craig Venter is. Never mind no one wants to sleep with him. wetlab.org.

Altium started off in Australia, moved to China and are now based out of Oregon. Wow. They have a new FREE PCB tool called Circuit Maker. I guess user experience is the thing. Not sure in what way it's deficient compared to the pro version.

Q's Snapdragon was in a few places spread out. Anyone figured out why the h Q's stock has been beaten down so much?

In addition to pitching Robot College in Riverside, Tim Lewis, who does Disney's Animatronics (or did anyway) was pitching the greatness of Garner Holt : http://www.ghpproducts.com/animatronicdemos.php . They have a massive machine shop he said after telling me animatronics is multi-disciplinary.

Thursday, September 24, 2015

How to Deactivate Suunto Core All Black Military Watch

Press all four buttons at the same time and keep pressed. You'll hear a beep and then the screen will stop displaying information.

Tuesday, September 22, 2015

Why Not Work on a Cure for Cancer?

Consider these smarties :

In China, iOS app developers used a counterfeit version of xcode (which is used to develop apps) to develop apps because it downloaded faster.

Then, the hackers modified this counterfeit version to plant malicious code.

How smart are these guys? Don't they have relatives they love who die of leucosemia? Mann!

Tuesday, September 08, 2015

Cute One : Nostradamus by Max Gunther

Well, maybe. The verses are in such indirect, mystical language that you can interpret any of them to prove anything you want to prove. Leaning over backward to be charitable to the ancient seer, I once studied a hundred of his prognostications and ended with the following statistical summary: Three forecasts were correct, eighteen were incorrect, and the remaining seventy-nine were such dense gibberish that I simply didn't know what the old Frenchman was driving at. Not a very impressive record. Yet Nostradamus managed to make a name for himself in the world of prophecy -- a name that any modern oracle would love to equal.

Nostradamus wasn't often right, but he sure was often.

Friday, September 04, 2015

Hemp : A Drug Good for You

Marshall Goldsmith - "Am I happy?" is the wrong question. The right one is "Am I doing my best to be happy?" Along those lines, are you doing your best, in every meeting to be (HEMP ) :

Happy
find Meaning
Engaged
build Positive Relationships

Thursday, August 13, 2015

Cute One from Stephen Wolfram - A Square Root Algorithm

I recently worked through an interesting algorithm for generating the binary digits of a square root. The arithmetic itself is remarkably simple. What makes the algorithm confusing is that several perfectly reasonable mental models turn out to be wrong.

Before looking at the calculation, it is worth identifying the traps.

Three misconceptions that can cause trouble

The first misconception is that an algorithm for finding sqrt(n) ought to terminate once the answer has been found. If n is 4, for example, we already know that:

√4 = 2

So one naturally expects the algorithm to arrive at 2 and stop.

But that is not what this algorithm does. It is a digit-generating algorithm. Each iteration generates another binary digit. It can therefore continue indefinitely, even when the number being represented has an exact finite binary representation.

The second misconception is to regard the variable s itself as the current numerical approximation to the square root. It is not. s is an integer whose binary digits encode the approximation. Its magnitude therefore grows rapidly even though the number represented by those digits is converging to a perfectly ordinary value.

The third misconception is particularly subtle: just as decimal numbers have identities such as

0.999999... = 1,

binary numbers have analogous identities:

1.111111...2 = 10.000000...2 = 2.

That fact turns out to explain exactly what happens when the algorithm is started with n = 4.

The algorithm

The procedure keeps two numbers, r and s. Initially:

r = n,    s = 0

At every step, compare r and s.

If r > s, replace them by:

r → 4(r − s − 1)
s → 2(s + 2)

Otherwise use:

r → 4r
s → 2s

One new binary digit of the square root is generated at every iteration.

Trying n = 4 in Excel

Suppose columns F and G contain r and s. Start with:

Step r s
1 4 0

The Excel formula for the next value of r is:

=IF(F4>G4,4*(F4-G4-1),4*F4)

and the formula for the next value of s is:

=IF(F4>G4,2*(G4+2),2*G4)

Copying the formulas downward produces:

Step r s
140
2124
32812
46028
512460
6252124
7508252
81020508
920441020
1040922044

At first sight this looks completely wrong. Instead of settling down to 2, both numbers are exploding.

But the growing size of s is a distraction. We need to look at its binary representation.

Look at s in binary

Converting s to base 2 gives:

s s in binary
00
4100
121100
2811100
60111100
1241111100
25211111100
508111111100

Now the pattern is obvious.

The significant digits being generated are:

1
11
111
1111
11111
111111
...

Interpreting the binary point as lying after the first digit gives:

1.
1.1
1.11
1.111
1.1111
1.11111
...

These are not integers. They are successive binary fractions.

What do those binary numbers mean?

In decimal:

Binary approximation Decimal value
1.021
1.121.5
1.1121.75
1.11121.875
1.111121.9375
1.1111121.96875

The sequence approaches 2:

1, 1.5, 1.75, 1.875, 1.9375, 1.96875, ... → 2

So the algorithm has not failed at all.

It is generating:

1.111111111...2

and this infinite binary fraction is exactly equal to:

10.000000000...2 = 2.

The binary analogue of 0.999...

This is the same phenomenon as the familiar decimal identity:

0.999999... = 1.

To see why, expand the binary number:

1.111111...2 = 1 + 1/2 + 1/4 + 1/8 + 1/16 + ...

Everything after the binary point is a geometric series:

1/2 + 1/4 + 1/8 + ... = 1.

Therefore:

1.111111...2 = 1 + 1 = 2.
The important lesson: a number that has a terminating representation in some base also has a second representation ending in an infinite sequence of the largest possible digit. In binary, that digit is 1.

Making the result visible in Excel

Suppose column H contains the binary version of s:

0
100
1100
11100
111100
1111100
...

For example, this can be generated from s with an Excel binary-conversion formula appropriate to the values involved.

We now want a final column that interprets those bits as a binary fraction with the point immediately after the first digit.

If H4 contains the binary digits, use:

=DECIMAL(H4,2)/2^(LEN(H4)-1)

For example, if:

H4 = 1100

then:

11002 = 12

There are four binary digits, so divide by:

24−1 = 8.

Hence:

12 / 8 = 1.5.

This is exactly:

1.1002 = 1.5.

The resulting Excel table

s s2 Interpreted value
41001
1211001.5
28111001.75
601111001.875
12411111001.9375
252111111001.96875
5081111111001.984375
102011111111001.9921875

Now the convergence is visually obvious.

Showing the binary point explicitly

It can also be helpful to have Excel produce a textual version with the binary point inserted.

If the binary representation is in H4, use:

=LEFT(H4,1)&"."&MID(H4,2,LEN(H4)-1)

This turns:

100
1100
11100
111100

into:

1.00
1.100
1.1100
1.11100

The extra trailing zeros are part of the way s is stored and updated; they do not change the represented value.

An even simpler way to watch the generated digits

There is another useful observation hidden in the recurrence.

The branch chosen at each iteration directly tells us the next binary digit:

  • If r > s, the next digit is 1.
  • Otherwise, the next digit is 0.

So an Excel column containing:

=IF(F4>G4,1,0)

lets us watch the digit stream directly.

For n = 4, the comparison keeps producing:

1 1 1 1 1 1 1 1 ...

which corresponds to:

1.111111...2 = 2.

For a non-square such as √2, the output instead begins with a nonrepeating sequence of bits corresponding to its binary expansion.

Why n = 4 is a slightly awkward example

Using 4 as the starting value is mathematically valid, but it happens to land exactly on a boundary where the answer has two binary representations:

10.000000...2

and

1.111111...2.

That makes it a particularly good example for understanding positional notation, but perhaps not the easiest first example for understanding the square-root algorithm itself.

A value such as 2 makes the digit-generation behavior more apparent because √2 has an infinite, nonrepeating binary expansion.

The deeper lesson

The interesting part of this exercise is not really Excel, and it is not even square roots. It is the danger of confusing an algorithm's internal state with the mathematical object that state represents.

The variable s becomes:

4
12
28
60
124
252
508
...

and if we treat those values as approximations to √4, the algorithm looks absurd.

But those integers are really containers for an ever-growing string of binary digits. Once we interpret them correctly, the same computation becomes:

1, 1.5, 1.75, 1.875, 1.9375, 1.96875, ...

and suddenly the design of the algorithm makes sense.

A useful general rule when studying unfamiliar algorithms: before deciding that an intermediate variable is behaving incorrectly, ask what that variable is intended to represent. Its numerical value may be much less important than its structure, digits, bits, indices, or invariants.

In this case, the apparently runaway calculation was doing exactly what it was supposed to do: generating one more binary digit of the square root at every step.

Tuesday, August 04, 2015

The Coarse Correction

Dr. Perlmutter : eat a high fat diet - fat in your diet doesn't make you fat.

Dr. Sapolsky (Stanford, Great Courses : Stress and Your B) : Fat in your blood is a risk factor - if you get your heart rate up, so the blood is circulating faster, then the fat molecules can cause damage at the bifurcation points.

So - don't eat fat before you expose yourself to stress - like a workout.

Friday, July 10, 2015

Analog Art

When my analog simulation gave me something so beautiful, how could I NOT embellish it and SHARE it? I saw the plots and immediately thought of the beautiful, golden desert just after sunset. Oh, the beautiful, gorgeous desert.

The significance? Carli Lloyd has ridden Abby Wambach and overcome obstacle after obstacle and now the last few remain - the French team outfitted by the Lacoste alligator and then the oriental serpents - far in the East.

Friday, June 26, 2015

Thank You Charles Duhigg for Wasting Everybody's Time

Whoever told this bum he could be an author?

His book should have been a paper of 5-7 pages, with an abstract, a body and a conclusion.

Now I've already wasted 4 hours reading it.

An apology in fairness : the bit about near misses was good - thank you Sir. Organized crime that wants your money leaves you feeling like you almost won - and the problem gamblers fall for it. I almost won! Next time I'll really win!

Sunday, May 31, 2015

Real Names of Well Known Professors

aus Professor Greenstein of Understanding the Fundamentals of Music :

Israel Berlinsky --> Irving Berlin
Jacob Gershewitz --> George Gershwin
Aaron Kaplan --> Aaron Copeland
Allen Koenigsburg --> Woody Allen
Betty Persky --> Lauren Bacall
Melvin Kaminsky --> Mel Brooks (BTW : Dean Kaminsky --> Danny Kaye)
Leonard Schneider --> Lenny Bruce
Bernie Schwartz --> Tony Curtis
Danielovich Dempsky --> Kirk Douglas
Robert Zimmerman --> Bob Dylan
Eugene Horowitz --> Michael Landon
Joseph Levich --> Jerry Lewis
Wolffe Garber --> Bill Macy
Winona Horowitz --> Winona Ryder

Essential Reading (Listening) for New Employees

Want your small company to go big? Get your greens to eat these :

  1. Winning by Jack W.
  2. The ABCs of Building a Winning Business Team by Blair Singer
  3. Steve Jobs by Walter Isaacson
  4. Inside Apple
  5. Critical Thinking Skills in 20 Minutes a Day by Lauren Starkey
  6. The Power of Habit by Charles Duhigg
  7. The E-Myth Revisited by Michael Gerber

Sunday, May 10, 2015

How to Build Great Software

Decompose your problem on the basis of what design decisions are difficult and what design decisions can change. DON'T decompose based on your flowchart and the order of processing. But, don't take my word for it :

http://web.stanford.edu/~ouster/cgi-bin/cs190-spring15/lecture.php?topic=complexity

https://www.cs.umd.edu/class/spring2003/cmsc838p/Design/criteria.pdf

Saturday, March 14, 2015

Herbert Waggener : An Unknown Giant of Science

Poor mensch - not even a wikipedia page on him.. He has to tell his own story :

http://www.lulu.com/spotlight/hawaggener

I entered Missouri University in 1954 to major in Physics. When I entered, I was a little undereducated, and had to work my way through school, but by the second year, I had reached parity with my peers from St. Louis and other larger schools. I was awarded scholarships by the Physics Department in each of my next three years, and joined delta sigma phi fraternity in my junior year to provide some rounding out. In my senior year, I flamed out, and academically crashed and burned. My marriage in 1958 worked well, and I once more achieved excellence at San Diego State College. I joined the Navy Electronics Lab in 1959 and received a Masters in Physics in 1960. While in San Diego, we had three bright, healthy children, and in 1961 I accepted a job at AT&T Bell Labs, Murray Hill NJ to work in semiconductor technology. (The Education and Domestication of a Bulldog)

I joined Bell Labs in 1961, wanting to prove that I could compete and contribute to the progress of silicon semiconductor technology, in the midst of an amazing group of giants. After somemeandering about, I was successful in a small way. Among other things, I invented alcoholic alkaline anisotropic etches for forming isolation slots, electrochemically controlled thinning for forming very thin silicon structures, and applied them to making high speed bipolar integrated circuits. My group and I were drafted into a massive technology development program to help develop a very advanced double level tungsten gate MOS memory technology. My group and I made significant contributionsd to the project before I left to join the Teletype Corporation in Skokie Illinois. I left some small footprints on the sands of time while at Bell Labs, but wanted to find a new venue for my efforts. (On the Bell Lap, Walking Among Giants)

Thursday, March 12, 2015

LTspice and XFAB - The Unbeatable Combination

A work of art - a 4 MHz switcher with SKIP mode implemented. Everything's macromodeled at this point except the switches and some of the logic cells.. Showing a sweep of the load with VIN 3.3V, Vo 5.625V (nom, this is the load-line architecture).

Now, time to try prototyping a hysteretic boost using what I just learned today..

Thursday, March 05, 2015

Intuitively Please : R1C1 Into R2C2

Intuitively, say what the bode plot should be. That part's not hard - you can work from what you'll get at f=0 and f=0 (what do caps do at both extremes?)

But, can you intuitively say what the pole and zero are? The math is easy, you could do this in a minute.. but.. think..

You already have a Thevenin circuit - so, if you make a Norton equivalent, what current do you get? And into what load? Get it - the load is everything in parallel - so, since that load looks like a short at infinite freq, obviously you have a pole at W = 1/(R1||R2 (C1 + C2)) . Easy.

Zero? What current do you get in your Norton equivalent? You have a part through an R and a C - at high frequency, it goes up because of the cap - so, obviously a pole - and, the frequency has to be W = 1/ (R1 C1). Childishly simple..


Wednesday, March 04, 2015

Digital Is Hard

Thought occurred to me today that what stands between me and being a successful subsystem designer (understand tradeoffs between the various topologies and control-schemes for power delivery) is a weakness with rapid digital prototyping..

It's easy to think of if-thens in your head. But how do you translate them into digital gates?

We're talking asynchronous stuff here - and not something neatly wrapped up in a box like a state-machine. Even an asynchronous one would be easy..

Give Me a Fish, Or, Teach Me ... LTspice Behavioural OR Gate

How do you make the symbol the easy way :

Open the one they have in Digital. Save As a copy.
Open in text editor, change SymbolType CELL to BLOCK.
Remove the Prefix and SpiceModel lines.
Add the SYMATTR SpiceLine thing to provide default values for the params.

That's it - now you know how to make your own models super easy..

For instructions, see older post on the AND gate below.

---------------------- first file, save as mdl_or.asc (schematic)
Version 4
SHEET 1 1152 680
WIRE 48 80 16 80
WIRE 560 112 448 112
WIRE 64 144 16 144
WIRE 624 160 512 160
WIRE 512 176 512 160
WIRE 240 192 128 192
WIRE 384 192 320 192
WIRE 464 192 384 192
WIRE 128 256 128 192
WIRE 368 288 352 288
WIRE 384 288 384 256
WIRE 384 288 368 288
WIRE 464 288 464 240
WIRE 464 288 384 288
WIRE 512 288 512 256
WIRE 512 288 464 288
WIRE 752 384 624 384
WIRE 384 400 256 400
WIRE 496 400 464 400
WIRE 576 400 496 400
WIRE 624 400 624 384
WIRE 64 416 16 416
WIRE 576 416 576 400
WIRE 256 432 256 400
WIRE 496 480 496 464
WIRE 576 480 576 464
WIRE 576 480 496 480
WIRE 624 480 576 480
WIRE 480 496 464 496
WIRE 496 496 496 480
WIRE 496 496 480 496
WIRE 128 576 128 336
WIRE 128 576 16 576
WIRE 256 576 256 512
WIRE 256 576 128 576
FLAG 16 144 b
IOPIN 16 144 In
FLAG 16 80 a
IOPIN 16 80 In
FLAG 16 576 g
IOPIN 16 576 In
FLAG 560 112 y
IOPIN 560 112 Out
FLAG 16 416 c
IOPIN 16 416 In
FLAG 624 160 Q
IOPIN 624 160 Out
FLAG 752 384 Qb
IOPIN 752 384 Out
FLAG 368 288 g
FLAG 480 496 g
SYMBOL bv 128 240 R0
SYMATTR InstName B1
SYMATTR Value V=if( (V(a,g) > Vth) | (V(b,g) > Vth) | (V(c,g) > Vth) , Vhigh, Vlow )
SYMBOL bv 256 416 R0
SYMATTR InstName B2
SYMATTR Value V=if( !((V(a,g) > Vth) | (V(b,g) > Vth) | (V(c,g) > Vth)) , Vhigh, Vlow )
SYMBOL res 336 176 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R1
SYMATTR Value 1000
SYMBOL res 480 384 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R2
SYMATTR Value 1000
SYMBOL cap 368 192 R0
SYMATTR InstName C1
SYMATTR Value 1p
SYMBOL cap 480 400 R0
SYMATTR InstName C2
SYMATTR Value 1p
SYMBOL e 624 384 R0
SYMATTR InstName E1
SYMATTR Value 1
SYMBOL e 512 160 R0
SYMATTR InstName E2
SYMATTR Value 1
TEXT 712 160 Left 2 ;params : \nVth : input transition threshold\nVhigh : output high level\nVlow : output low level
---------------------- end first file
Version 4
SymbolType BLOCK
LINE Normal -32 32 -28 32
LINE Normal -32 96 -28 96
LINE Normal 12 48 32 48
LINE Normal -32 80 -24 80
LINE Normal -32 64 -20 64
LINE Normal -32 48 -24 48
CIRCLE Normal 32 88 16 72
ARC Normal -132 8 -20 120 -32 96 -32 32
ARC Normal -80 -12 28 96 -28 96 24 64
ARC Normal -80 32 28 140 24 64 -28 32
WINDOW 0 -8 8 Left 2
WINDOW 3 -8 128 Left 2
SYMATTR Description Behavioral OR gate with complementary outputs
SYMATTR SpiceLine Vth=1.5 Vhigh=3.0 Vlow=0
PIN -32 48 NONE 0
PINATTR PinName a
PINATTR SpiceOrder 1
PIN -32 64 NONE 0
PINATTR PinName b
PINATTR SpiceOrder 2
PIN -32 80 NONE 0
PINATTR PinName c
PINATTR SpiceOrder 3
PIN 32 80 NONE 0
PINATTR PinName Qb
PINATTR SpiceOrder 4
PIN 32 48 NONE 0
PINATTR PinName Q
PINATTR SpiceOrder 5
PIN -16 96 NONE 0
PINATTR PinName g
PINATTR SpiceOrder 6
---------------------- end 2nd file (mdl_or.asy - symbol )

LTspice Behavioural AND Gate

For that day when you're finally fed up with the one they've provided that's causing you to pull your hair out..

How : save the first file as mdl_and.asc. Save the second as mdl_and.asy in your working directory - that is, wherever you have the testbench you're going to simulate - so you can use this..

NOTE - if you're familiar with LTspice files, you should know that stuff displayed below maybe wrapped - that is lines that should all be on one "line" are displayed using 2.. Generally, all lines begin with a directive that's ALL CAPs.



---------------------------------------- first file (don't copy this line)
Version 4
SHEET 1 1392 680
WIRE 864 0 752 0
WIRE 752 16 752 0
WIRE 480 32 368 32
WIRE 624 32 560 32
WIRE 704 32 624 32
WIRE 368 96 368 32
WIRE 608 128 592 128
WIRE 624 128 624 96
WIRE 624 128 608 128
WIRE 704 128 704 80
WIRE 704 128 624 128
WIRE 752 128 752 96
WIRE 752 128 704 128
WIRE 160 160 112 160
WIRE 160 224 112 224
WIRE 992 224 864 224
WIRE 624 240 496 240
WIRE 736 240 704 240
WIRE 816 240 736 240
WIRE 864 240 864 224
WIRE 816 256 816 240
WIRE 496 272 496 240
WIRE 160 288 112 288
WIRE 736 320 736 304
WIRE 816 320 816 304
WIRE 816 320 736 320
WIRE 864 320 816 320
WIRE 720 336 704 336
WIRE 736 336 736 320
WIRE 736 336 720 336
WIRE 368 416 368 176
WIRE 368 416 112 416
WIRE 496 416 496 352
WIRE 496 416 368 416
FLAG 112 160 a
IOPIN 112 160 In
FLAG 112 224 b
IOPIN 112 224 In
FLAG 112 288 c
IOPIN 112 288 In
FLAG 112 416 g
IOPIN 112 416 In
FLAG 864 0 Q
IOPIN 864 0 Out
FLAG 992 224 Qb
IOPIN 992 224 Out
FLAG 608 128 g
FLAG 720 336 g
SYMBOL bv 368 80 R0
SYMATTR InstName B1
SYMATTR Value V=if( (V(a,g) > Vth) & (V(b,g) > Vth) & (V(c,g) > Vth) , Vhigh, Vlow )
SYMBOL bv 496 256 R0
SYMATTR InstName B2
SYMATTR Value V=if( !((V(a,g) > Vth) & (V(b,g) > Vth) & (V(c,g) > Vth)) , Vhigh, Vlow )
SYMBOL res 576 16 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R1
SYMATTR Value 1000
SYMBOL res 720 224 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R2
SYMATTR Value 1000
SYMBOL cap 608 32 R0
SYMATTR InstName C1
SYMATTR Value 1p
SYMBOL cap 720 240 R0
SYMATTR InstName C2
SYMATTR Value 1p
SYMBOL e 864 224 R0
SYMATTR InstName E1
SYMATTR Value 1
SYMBOL e 752 0 R0
SYMATTR InstName E2
SYMATTR Value 1
TEXT 952 0 Left 2 ;params : \nVth : input transition threshold\nVhigh : output high level\nVlow : output low level
---------------------------------------- end first file (don't copy this line)
Version 4
SymbolType BLOCK
LINE Normal -32 32 -12 32
LINE Normal -32 96 -12 96
LINE Normal -32 96 -32 32
LINE Normal 16 48 32 48
CIRCLE Normal 32 88 16 72
ARC Normal -44 96 20 32 -12 96 -12 32
WINDOW 0 16 24 Left 2
WINDOW 3 16 112 Left 2
SYMATTR Description Custom behavioural AND gate
SYMATTR SpiceLine Vth=1.5 Vhigh=3.0 Vlow=0
PIN -32 48 NONE 0
PINATTR PinName a
PINATTR SpiceOrder 1
PIN -32 64 NONE 0
PINATTR PinName b
PINATTR SpiceOrder 2
PIN -32 80 NONE 0
PINATTR PinName c
PINATTR SpiceOrder 3
PIN 32 80 NONE 0
PINATTR PinName Qb
PINATTR SpiceOrder 4
PIN 32 48 NONE 0
PINATTR PinName Q
PINATTR SpiceOrder 5
PIN -16 96 NONE 0
PINATTR PinName g
PINATTR SpiceOrder 6
---------------------------------------- end second file (don't copy this line)

Linux Catching Up to Windows in User Experience

By the look of things, enough people have clamoured about the lack of Autohotkey on Linux that Dekter has done something about it :

https://code.google.com/p/autokey/
https://www.youtube.com/watch?v=4KV_B6dBFHA
http://beginlinux.com/desktop_training/ubuntu/autokey-video-tutorial

Tuesday, March 03, 2015

LTspice : An NMOS Current-Sense Model for a Boost

Comes in handy when you're designing a peak-current-mode boost :

Basically use the bi component which lets you do some useful stuff (i.e., write code to do fancy models). In this case, it's a simple model. You only want to pass on the current when the FET is ON.


Put in a loop with the appropriate (not 100%) hooks to skip pulses at light load :

Monday, March 02, 2015

Learning from the Humble D Flip Flop

I was lamenting to a friend the other day how unproductive I am without the infrastructure of a big company. One thing an IC designer misses is the standard-cell libraries you get for free when you're with an established house. So, my current endeavours calling for a D-Flip-flop with asynchronous reset, I googles and gets this :


So, after reading this, I'd say : "Del Greco : More Harm Than Good". Why would you put something up like this in the age of LTspice, when you can get your TA or whoever to check it out? See how the thing simulates :

Crap! But, as George would read out, Prof. Del Greco is truly and utterly guilty of nothing more than trying to do his duty under difficult circumstances. Here's a class act :


Popping Pills

Real time puzzle solving. Let's see if I'm right. I haven't felt too well lately, but managed some sleep yesterday during the day and felt refreshed. Didn't sleep too bad at night either.. Feel some good muscle tone. Despite not doing Lumosity for weeks, pulled off 210k+ on Penguin P. So..

RAY: You're on a medication regime in which you are to take daily one tablet of A and one of B. So, you have two little pill containers. One says "Pill A," and one says "Pill B." You must be careful. Taking two or more B's can have unpleasant side effects, or can even be fatal. In order for the B to be effective, it must be accompanied by the A pill.

TOM: So, you gotta take one A and one B. Got it.

RAY: Right. You open up the A bottle and one A pill kind of jumps out into your palm. You open the B bottle, and you accidentally get two Bs falling out of the bottle. But here's the problem: They look exactly the same. Both kinds of pills are blue, they're the same size, they're the same weight. And as soon as they fall in there, they get mixed up, so now you have three pills, but you can't tell what the heck you’ve got. The pills cost a hundred bucks apiece, and you can't throw them away.

How can you make sure that you get your daily dose of A and B without wasting any of the pills?

What would Jerome do?

Add one more pill A, put all 4 pills in a mortar, grind with a pestle and mix thoroughly. Then, take half of that mix today and the rest tomorrow.

If the pills are soluble in water, then you just add one more A pill, put all 4 in a class of water, dissolve, drink half today and the rest tomorrow?

How did I do? Sort of okay - they say cut each of the 4 pills in half and you're good - true.. Hmm..