interesting   144536

« earlier    

The Joy of Missing Out | Hacker News
Growing up in a Midwestern suburb where obesity was normal, I found the messaging about how our beauty standards are unrealistic and manufactured by Photoshop to be at least sort of plausible. Now I’m quite certain it’s not true. Walking down the street in San Francisco, a majority of the young adults I encounter really are slim, muscular, well groomed, and sharply dressed, embodying the “unrealistic, unhealthy” ideals of my adolescence. I wondered if this was just wealth, but it even extends to people in the service sector.
If Instagram lives are unrealistic, they’re unrealistic in much the same way as coastal megacities. It’s true that most Americans will never live like that. But those people really exist and their numbers are not small.
culture  interesting 
yesterday by ramitsethi
Renee DiResta on Twitter: "Spoiler: the worst offenders are almost all Waldorf schools. Everyone knows this and has known it for years. No one writes about it. It’s the educational equivalent of Scientology.…"
Spoiler: the worst offenders are almost all Waldorf schools. Everyone knows this and has known it for years. No one writes about it. It’s the educational equivalent of Scientology.
education  interesting 
2 days ago by ramitsethi
The Five Cognitive Distortions of People Who Get Stuff Done
• Personal Exceptionalism
• Dichotomous Thinking
• Correct Overgeneralization
• Blank-Canvas Thinking
• Schumpeterianism
interesting  excellence  psychology  business 
2 days ago by ramitsethi
Programmer: An Assault on Bugs (1977)

Programmer: An Assault on Bugs

OCT. 30, 1977

October 30, 1977, Page 119
The New York Times Archives

As George McMahon was driving to work, crime was on his mind. It was 9:15, and sleep was visibly rolling off him, but he was thinking hard, about how the problem was going to need more than a million bytes of memory, about the thousands of bugs he'd have to root out.

“This is really going to be a blockbuster,” he said. “One like this can really do a number on you.”

He cut into the parking lot at AGS Computers in Jericho, L. I., slid into the first vacant spot and scuffled his way into the stubby, modern building. The place was aswarm with programmers quietly hunkered over their desks, and filled with the clatter of high‐speed readout printers as they poured forth chunks of black digits. Mr. McMahon sat down to work on the program pricking away at him. Holmes Protection Inc. wanted to have computers monitor alarms in homes and stores and factories; if a burglar tried to break in, the computers would pass the word to other computers at Holmes offices.

George McMahon is one of 230,000 people in the country who tell computers what to do. Computers surround us, some 150,000 of them, but they are little more than electronic rubble without the programmers and their mysterious art, Indeed, if there were no programmers, society itself would grind to a halt. Yet they are in painfully short supply.

Tons of want ads for programmers fill classified sections of newspapers, pledging good money ($10,000 to $35,000) and fast promotions if people will only sign on. “We're desperate for bodies,” says John Imlay, president of the Software Industry Association, “Almost every company in this field has openings and can't fill them, I can tell you there is a lot of programmer raiding going on. These are valuable, valuable boys.”

George McMahon Is solidly built, 39, with an angular, ceramic face and dark hair cropped short, His voice is like bowling ball in motion: deep and sonorous. His desk in a snug, woodpanel:4 office is usually in riotous confusion, brimming with computer printouts, yellow pads, a Texas Instruments calculator, a bottle of liquid paper. Atop a bookshelf rests a plaque: “To err is human; to really foul things up requires a computer.”

There are two basic kinds of programmers: “applications” and “systems” people. Systems programmers fret about the detailed and voluminous programs stored in the machine that allow the computer to function efficiently and to take on other programs. When computers run amok—spitting out reams of gibberish or losing data—systems people swoop in, sort of like firefighters, to stamp out the trouble.

Applications programmers like George McMahon use the computer to solve problems from the outside world. They have whipped up programs that enable computers to open and close venetian blinds, play chess, find proofs for theorems in symbolic logic, solve trigonometric identities, compose music, read biorhythms and simulate neuroses. One applications man programmed a computer to imitate a psychologist: He talked to It, and it talked back, sometimes asking questions such as, “So, how do you feel about that?”

George McMahon has 14 years of programming under his belt. His employer, AGS Computers, is a 10‐yearold firm (annual revenues of about $8 million) that designs programs for clients of any ilk, It has four offices In the New York area and employs about 200 programmers. Mr. McMahon recently wrapped up a computerized pollution control system for the Brooklyn‐Battery Tunnel. Before that, he knocked out a computerized tourist information operation for Washington D.C., and he did another program that automated testing system for train brakes,

The Holmes burglar alarm project, one of the bigger propositions, was begun In July. It won't be done until the end of next year. Written out, will pierbably occupy 700 typed pages. Programs can take days or years, depending on how tricky they are and how gifted the programmer is. “This will be a monster,” Mr, McMahon said.

The computers he is working with are 16 of the I.B.M, Series I minicomputers, which cost $10,000 to $25,000 and can perform a simple addition in 1.1 microseconds, or nearly a million additions a second. Fast, but the top I.B.M. computer—the 3033, which goes for $3.4 million—can add something in 58 nanoseconds, A nanosecond is a billionth of a second,

Mr. McMahon set about trying to explain what a program is.

Programs are commonly described as “a set of instructions.” Mr. McMahon agreed it was a sound definition, but he added:

“It must be remembered that the computer Is very unforgiving. If you tell a clerk to do something and your instructions are a shade off, the clerk will modify them and get the job done, 1 The computer does precisely what you tell it. Your instructions can be 99,9 percent correct, and the computer won't do what you intended. You're all right or all wrong.”

One pictures a programmer stooped over his computer terminal hour after hour, tensely tapping away. The truth is, applications programming is basically a paper and pencil business. A programmer doesn't see that much of a computer. Mr. McMahon figures he spends maybe a third of his time before a machine.

The first task of the applications programmer is to define the problem (which can take months) and lay out logical steps to its solution that the computer can follow (which can take months), Mr. McMahon works on his yellow pads—'I go through tons of them. I need a landfill for a wastepaper basket.” He puts something down, tears it up, tries a different approach. Computer lingo for the process is “iteration.” You try something, it bombs, you try again. You iterate. The better you are, the less you iterate.

Knotty problems like that posed by Holmes are just too mammoth for the mind to soak in all at once, so Mr. McMahon plans to split it into pieces, or “modules.” What's complicated about it is that computers are being asked to replace human judgment. Up until now, some 4,000 customers have had their alarms watched by men. Holmes wants computers to do the alarm watching and to decide how to act if and when an alarm goes off. But different customers require different procedures, which is evidenced by the fact that Holmes’ outline of the project fills a report the size of a phone book. All told, Mr. McMahon figures the program will involve more than 100,000 computer instructions. Whereas simple programs consist of five or six modules, this one is expected to run than thousand.

“When I get going on a project,” Mr. McMahon said, “I often let it float around at the back of my mind and don't bother it too much hoping a solution will form step by step. I sometimes see the program as a long train passing through my mina I know I'm together if I can follow each car as it chugs past, There's great glee, of course, when the caboose whips by.”

After a program design is done, Mr. McMahon starts to code it—to put it in computer language. Conciseness, is important; otherwise a lot of the computer's costly memory', where the data is stored, will be wasted. Mr. McMahon will write the Holmes program mostly in “assembly language,” hyphen in history. The rocket cost $18.5 million. but a fraction of it will be done in “FORTRAN,” which stands for formula translator. FORTRAN at least has a rough correspondence to English. Assembly language is a rampant mutation, made up of mnemonic symbols that stand for incredibly complex computer instructions. For example, “SFNED” stands for “scan byte field not equal and decrement,” and “FMVCD” sounds like a football play: “floating move and convert double.”

Whatever language they use, programmers, like writers, acquire their own individual styles. Ten programmers given the same problem will arrive at 10 different programs, and they will all work.

“A programmer tends to use the same computer instructions over and over,” Mr. McMahon explained, “or he'll physically structure his programs alike. I worked with one programmer who used as labels for procedures nothing but obscene words. No trouble spotting his work.”

While coding, he said that he expends much of his time digging for errors. This is called “debugging.” Programs of any complexity whatsoever inevitably abound with bugs. “What you do, Mr. McMahon said, “is to set up little test cases for pieces of your program to run on. Then you steady yourself and wait for the errors. Believe me, they'll come,”

Computers behave in quirky ways when they hit snags. One common reaction is for them to print out all the data they've been given. This is known as a “dump.” The other typical response is to stop rtinning the program and note that an error has been committed. Programmers can have computer state whatever they want when it conies across an error, anything from dry, “There's an error,” to “Congratulations, bimbo, you've done it again.”

Finding hugs can be mordant work; even such seemingly frothy concerns as punctuation can foul things up. In the early 1960's a rocket launched from Cape Kennedy enroute to Venus started lurching wildly off course and had to be blasted apart. It was determined that a hyphen had been left out of the program for the flight. It was probably the most expensive

Once the program has been debugged, Mr. McMahon pieces all the modules together and runs “the whole ball of wax—the ultimate test. Then he does the documentation, which is to type up the whole process in a presumably coherent report. The effort is as much for Mr. Mahon's benefit as the user's. “Six months later,” he said, “you could go back to a program and not know how the fruit you did it. The man in the moon could have written it.”

Obeying certain familiar gastric signals, … [more]
programming  technology  debugging  history  quality  softwaretesting  interesting 
3 days ago by tdjones

« earlier