Archive | programming RSS feed for this section

Programmer Competency Matrix

Note that the knowledge for each level is cumulative; being at level n implies that you also know everything from the levels lower than

(Full Story: Programmer Competency Matrix)

Don’t Call Yourself A Programmer, And Other Career Advice

- 90% of programming jobs are in creating Line of Business software
- Engineers are hired to create business value, not to program things
- You radically overestimate the average skill of the competition because of the crowd you hang around with
- “Read ad. Send in resume. Go to job interview. Receive offer.” is the exception, not the typical case, for getting employment
- All business decisions are ultimately made by one or a handful of multi-cellular organisms closely related to chimpanzees, not by rules or by algorithms

(Full Story: Don’t Call Yourself A Programmer, And Other Career Advice)

five-essential-phone-screen-questions

The Five Essential Questions for the first phone-screen with an SDE candidate:
1) Coding. The candidate has to write some simple code, with correct syntax, in C, C++, or Java. 2) OO design. The candidate has to define basic OO concepts, and come up with classes to model a simple problem.3) Scripting and regexes. The candidate has to describe how to find the phone numbers in 50,000 HTML pages. 4) Data structures. The candidate has to demonstrate basic knowledge of the most common data structures.5) Bits and bytes. The candidate has to answer simple questions about bits, bytes, and binary numbers.
Please understand:   what I’m looking for here is a total vacuum in one of these areas.

(Full Story: five-essential-phone-screen-questions)

Size is the best predictor of code quality

A long paper trail of software engineering studies has shown that many internal code metrics (such as methods per class, depth of inheritance tree, coupling among classes etc.) are correlated with external attributes, the most important of which is bugs. What the authors of this paper show is that when they introduce a second variable, namely, the total size of the program, into the statistical analysis and control for it, the correlation between all these code metrics and bugs disappears.

(Full Story: Size is the best predictor of code quality)

Google Prediction API – Google Code

The Prediction API enables you to make your smart apps even smarter. The API accesses Google’s machine learning algorithms to analyze your historic data and predict likely future outcomes. 

(Full Story: Google Prediction API – Google Code)

Microsoft has developers horrified about coding for Windows 8

Hearing that Windows 8 would use HTML5 and JavaScript for its new immersive applications was, therefore, more than a little disturbing to Windows developers. Such a switch means discarding two decades of knowledge and expertise of Windows development—and countless hours spent learning Microsoft’s latest-and-greatest technology—and perhaps just as importantly, it means discarding rich, capable frameworks and the powerful, enormously popular Visual Studio development environment, in favor of a far more primitive, rudimentary system with substantially inferior tools.

(Full Story: Microsoft has developers horrified about coding for Windows 8)

How to build an Apple Push Notification provider server (tutorial) « Boxed Ice Blog

1. You connect to the APNS using your unique SSL certificate2. Cycle through the messages you want to send
3. Construct the payload for each message4. Disconnect from APNS

(Full Story: How to build an Apple Push Notification provider server (tutorial) « Boxed Ice Blog)

Leveling Up: Career Advancement for Software Developers

Pillar 1: Technical CompetencePillar 2: Professional CommunicationPillar 3: Getting Credit for What You Do

(Full Story: Leveling Up: Career Advancement for Software Developers)

13 ways your app can be more like FarmVille

1. Help me out by adding a first-time-user guided tour (but keep it optional)

2. Never leave me guessing – show inline feedback for everything

3. Allow me to trade my time (I like a challenge), or my money for your service

4. Give me a fun, low pressure way to share your app with my friends

5. Surprise me randomly and encourage me to come back for more surprises

6. Help me connect with my real friends

7. Give me recognition for the time I put into your app

8. Help me visualize how much progress I’m making

9. Engage me – set up quests of varying difficulty for me to complete (but keep it optional)

10. Help me recognize my strong points, and where I can still use some help

11. Let me trade my hard work for something of value (even if it’s made up)

12. Make it easy for me to pay you – give me multiple options

13 ways your app can be more like FarmVill

14. Help me feel unique by only offering some things for a limited time.

(Full Story: 13 ways your app can be more like FarmVille)

Follow

Get every new post delivered to your Inbox.