3 stories
·
1 follower

Cold Medicine

7 Comments and 19 Shares
Seriously considering buying some illegal drugs to try to turn them back into cold medicine.
Read the whole story
wffurr
554 days ago
reply
A Simple and Convenient Synthesis of Pseudoephedrine From N-Methylamphetamine: http://heterodoxy.cc/meowdocs/pseudo/pseudosynth.pdf
ManBehindThePlan
554 days ago
This was even brought up in the ExplainXKCD: http://www.explainxkcd.com/wiki/index.php/1618
Share this story
Delete
5 public comments
JayM
553 days ago
reply
:)
Atlanta, GA
jimwise
554 days ago
reply
This.
CallMeWilliam
554 days ago
reply
The difference between the real stuff and the fake shit is stark. STARK.
mooglemoogle
554 days ago
That fake shit isn't even clinically proven to be better than a placebo for congestion. It really is literally useless.
neilcar
554 days ago
reply
The fight is real.
Charlotte, North Carolina
sarabond
554 days ago
reply
So fucking accurate.
Norcross, Georgia

Organizational Skills Beat Algorithmic Wizardry

9 Comments and 23 Shares
I've seen a number of blog entries about technical interviews at high-end companies that make me glad I'm not looking for work as a programmer. The ability to implement oddball variants of heaps and trees on the spot. Puzzles with difficult constraints. Numeric problems that would take ten billion years to complete unless you can cleverly analyze and rephrase the math. My first reaction is wow, how do they manage to hire anyone?

My second reaction is that the vast majority of programming doesn't involve this kind of algorithmic wizardry.

When it comes to writing code, the number one most important skill is how to keep a tangle of features from collapsing under the weight of its own complexity. I've worked on large telecommunications systems, console games, blogging software, a bunch of personal tools, and very rarely is there some tricky data structure or algorithm that casts a looming shadow over everything else. But there's always lots of state to keep track of, rearranging of values, handling special cases, and carefully working out how all the pieces of a system interact. To a great extent the act of coding is one of organization. Refactoring. Simplifying. Figuring out how to remove extraneous manipulations here and there.

This is the reason there are so many accidental programmers. You don't see people casually become neurosurgeons in their spare time--the necessary training is specific and intense--but lots of people pick up enough coding skills to build things on their own. When I learned to program on an 8-bit home computer, I didn't even know what an algorithm was. I had no idea how to sort data, and fortunately for the little games I was designing I didn't need to. The code I wrote was all about timers and counters and state management. I was an organizer, not a genius.

I built a custom a tool a few years ago that combines images into rectangular textures. It's not a big program--maybe 1500 lines of Erlang and C. There's one little twenty line snippet that does the rectangle packing, and while it wasn't hard to write, I doubt I could have made it up in an interview. The rest of the code is for loading files, generating output, dealing with image properties (such as origins), and handling the data flow between different parts of the program. This is also the code I tweak whenever I need a new feature, better error handling, or improved usability.

That's representative of most software development.

(If you liked this, you might enjoy Hopefully More Controversial Programming Opinions.)
Read the whole story
wffurr
1465 days ago
reply
Agreed, but how do you interview for organizational skills while also ensuring they know how to write a for loop or recursive function?
wmorrell
1465 days ago
We ask the following: in language and environment of your choice, write a four-function calculator; i.e. a program which will take two numeric operands, an operator (addition, subtraction, multiplication, division), and produce a correct answer. You may use whatever tools you like, have full internet access, and can ask us for help. If the candidate succeeds in writing this in about an hour, we ask hir to add in a primality test, showing some indicator if the answer is a prime number. I've found it's a good test to show how a candidate handles vague requirements, basic I/O, simple state management and/or parsing, refactoring in the face of changing requirements. It's simple enough to accomplish in an interview, and covers the basic skills needed to create a "real" program.
acdha
1465 days ago
For non-junior positions I prefer to ask them to describe real problems they've worked on and how they addressed them. Trying to spring a full coding question is time-consuming and stressful but what I really want to hear is how well they understand the challenges and approaches – if they get things like loose coupling it's obvious in both what they dislike and how they propose dealing with it. These days Github is also invaluable for seeing code-as-practiced
Share this story
Delete
8 public comments
squinky
1462 days ago
reply
Programming tests. I hates them.
Santa Cruz, CA
LeMadChef
1464 days ago
reply
Please answer this really hard problem of the type you will never find in this job. Also, if you try any of your clever "algorithms" here you will be pulled aside and given a stern talking-to about readability and code maintenance. We don't want any cowboy coders here!
Denver, CO
rikishiama
1464 days ago
reply
God I wish my boss -- who's been trying to find a suitable (to him) programmer for over 3 months -- would read this. Actually, I wish he could *understand* this, let alone read it.
zwol
1465 days ago
reply
QFT: "...the number one most important [programming] skill is how to keep a tangle of features from collapsing under the weight of its own complexity."
Mountain View, CA
jepler
1465 days ago
reply
at $DAY_JOB, a very tractable (O(n) even if you're naive) problem is the interview programming question. sadly, still a good weeder question.
Earth, Sol system, Western spiral arm
tylerhall
1465 days ago
reply
Amen.
Nashville

Subways

13 Comments and 21 Shares
About one in three North American subway stops are in NYC.
Read the whole story
wffurr
1538 days ago
reply
Ashmont-Manhattan high-speed line.
Share this story
Delete
11 public comments
lbernholz
1536 days ago
reply
Subways!
San Francisco
sonarun
1537 days ago
reply
This is great! Go NYC!
New York, NY
sleepgoblin
1538 days ago
reply
I love this. I'd actually wear this on a shirt :D
squinky
1538 days ago
reply
I'm amused by a) Vancouver and San Francisco sharing the same Richmond, b) the fact that BART goes to Sunnydale, and c) the Springfield monorail!
Santa Cruz, CA
tedder
1538 days ago
reply
I live on this map. Hooray!
Uranus
grammargirl
1538 days ago
reply
Hover text <3 Also, second Scott on Ashmont-Manhattan high speed line ASAP pls.
Brooklyn, NY
satadru
1538 days ago
reply
NYC: 700 miles of subway for the win. Also, restricting fares to 5 cents for 30 years so that several competing subway companies go out of business letting the city take them over, also for the win, I guess.
New York, NY
adamgurri
1538 days ago
reply
cool
New York, NY
brico
1538 days ago
reply
One day soon
Brooklyn, NY
smadin
1538 days ago
reply
I would really like an "Ashmont-Manhattan high speed line" to be a thing.
Boston
Gospodin
1538 days ago
They can re-use some of the right-of-way from the Alameda-Weehawken Burrito Tunnel