Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- 2011



  Difference Engine: Luddite legacy

AN APOCRYPHAL tale is told about Henry Ford II showing Walter Reuther, the veteran leader of the United Automobile Workers, around a newly automated car plant. “Walter, how are you going to get those robots to pay your union dues,” gibed the boss of Ford Motor Company. Without skipping a beat, Reuther replied, “Henry, how are you going to get them to buy your cars?”Whether the exchange was true or not is irrelevant. The point was that any increase in productivity required...

   Artificial intelligence,Engine,Difference,Human,Computer     2011-11-07 08:33:16

  A brief guide to tech internships

Planning to be an Intern in the Bay Area during Summer 2012? Make sure to read an Intern's Guide to the Bay Area, and join the 2012 Facebook group.  (via this guy, via this guy) Joel Spolsky, from the Joel On Software blog and StackOverflow, wrote an article with Advice for Computer Science College Students back in '05. According to Joel,  No matter what you do, get a good summer internship. As such: here’s everything you ever wanted to know about tech inter...

   Internship,Advice,CS student     2012-02-01 04:48:31

  An open letter to those who want to start programming

First off, welcome to the fraternity. There aren’t too many people who want to create stuff and solve problems. You are a hacker. You are one of those who wants to do something interesting. “When you don’t create things, you become defined by your tastes rather than ability." – WhyTheLuckyStiff Take the words below with a pinch of salt. All these come from me – a bag-and-tag programmer. I love to get things working, rather than sit at something and over-o...

   Programming,Tips     2011-06-09 23:45:45

  An open letter to those who want to start programming

First off, welcome to the fraternity. There aren’t too many people who want to create stuff and solve problems. You are a hacker. You are one of those who wants to do something interesting. “When you don’t create things, you become defined by your tastes rather than ability." – WhyTheLuckyStiff Take the words below with a pinch of salt. All these come from me – a bag-and-tag programmer. I love to get things working, rather than sit at something and over-o...

   Tips,Programming,C,C++,Java,Skill,Develo     2011-08-11 11:24:50

  Software philosophy: Release early, release often vs polished releases

Release early, release often is a philosophy where you release the product as soon as possible and rapidly iterate it to perfection by listening to your customers. A polished release, on the other hand is where your product, in its initial version is solid, lacks obvious bugs and has just enough features to satisfy a majority of your consumers. Most software companies adopt either one of this and that choice is not superficial. In fact, it roots down to the heart of the company’s i...

   Design philosophy,Release early,Release often,Polished relaese     2011-11-28 09:22:17

  Functional Programming in C++

Probably everyone reading this has heard “functional programming” put forth as something that is supposed to bring benefits to software development, or even heard it touted as a silver bullet.  However, a trip to Wikipedia for some more information can be initially off-putting, with early references to lambda calculus and formal systems.  It isn’t immediately clear what that has to do with writing better software. My pragmatic summary:  A large fraction of th...

   C++,Functional programming     2012-04-28 06:16:37

  True Scala complexity

Update 2: Sorry for the downtime. Leave it to the distributed systems guy to make his blog unavailable. Nginx saves the day.It’s always frustrating reading rants about Scala because they never articulate the actual complexities in the core language.Understandable—this post is intended fill that gap, and it wasn’t exactly easy to put together. But there’s been so much resistance to the very thought that the complexity exists at all, even from on up high, that I thou...

   Scala,Complexity     2012-01-10 07:17:07

   Python – parallelizing CPU-bound tasks with multiprocessing

In a previous post on Python threads, I briefly mentioned that threads are unsuitable for CPU-bound tasks, and multiprocessing should be used instead. Here I want to demonstrate this with benchmark numbers, also showing that creating multiple processes in Python is just as simple as creating multiple threads. First, let’s pick a simple computation to use for the benchmarking. I don’t want it to be completely artificial, so I’ll use a dumbed-down version of factorization...

   Python,Multitasking,Multiprocessing,CPU bound     2012-01-17 11:38:22

  SQL Injection through HTTP Headers

During vulnerability assessment or penetration testing, identifying the input vectors of the target application is a primordial step. Sometimes, when dealing with Web application testing, verification routines related to SQL injection flaws discovery are restricted to the GET and POST variables as the unique inputs vectors ever. What about other HTTP header parameters? Aren’t they potential input vectors for SQL injection attacks? How can one test all these HTTP parameters and whic...

   Code security,SQL injection,HTTP header     2012-04-05 11:42:04

  10 Web Design Elements that You Shouldn’t Overlook

When it comes to designing and building websites, it never seems to happen fast enough.Given this fast pace, many small details that are eventually required to build the website are often left out of the design process. While these details might be minor, they are what take a website from nice to truly awesome.These details are often easy to miss because they don’t drive the overall look and feel of the website. The problem is that as your development team works through the design, it wil...

   Web design,Verification,jQuery     2011-03-30 00:09:49