A couple days ago I realized that programming is by far the most social thing I do. Sure, I discuss things with other developers, QA, and business analysts, but that's a small part of my time. The vast majority of my time is spent looking at what is already there and trying to understand it. Not just what it does or how it does it, but why. And this requires a Theory Of Mind.
A theory of mind is when you realize that other people have their own mind and their own ideas that are separate and different from yours. Everything I see at work isn't some naturally occurring thing - it was created by someone, it has an intended purpose, a reason for being, some business or technical need that it meets. Much of my time is spent interacting with others but only when programming do I need to look into so many other minds at the same time, to find and understand the intent of the original developer, the business scenario being addressed, the reasons why it was done this way and not that way, and why it's still being done this way. Writing code generally isn't difficult, especially business apps, it's understanding the intent and reasons for the code that's tough. Like it says in Structure and Interpretation of Computer Programs, "Programs should be written for people to read, and only incidentally for machines to execute."
Compile and Execute Java Online - Try and experience the best cloud computing where you can edit, compile, ... Compile Preview | Execute | Share Code.
Subscribe to:
Post Comments (Atom)
Popular Posts
-
Bước 1 . Sử dụng ảnh rocket.psd để import vào trong dự án Flash của bạn. Xây dựng 2 layer để chứa tên lửa và phần nhiên liệu bị đốt cháy. Bư...
-
[FD's BlOg] - Adnet là một hệ thống quảng cáo trực tuyến trên nền tảng mạng Internet mà công cụ chính là các Website & Blog. Adnet ...
-
Đầu năm đầu tháng khai xuân một bài. Chúc mọi người một năm mới đầy sức khoẻ, may mắn, hạnh phúc. Mình về tết cũng rảnh đôi chút, sửa lại ch...
-
Let's say you're a developer on a C# app and just got a batch of new requirements. Let's also say that it has a fairly simple re...
-
Về cơ bản, screensaver là một tập tin có khả năng tự thực thi (executable). Do đó, nó có thể phát triển bằng hầu hết các ngôn ngữ lập trình....
-
I'd like to make a post about something that I think is one of the least utilized aspects of C#: custom collection initializers. Impleme...
-
Sau một thời gian chuẩn bị cho việc blog FD chuyển sang nhà mới thì hôm nay ngôi nhà mới cũng tương đối hòan chỉnh và hôm nay mình muốn thô...
-
Dijkstra's algorithm is a useful algorithm for roguelike developers to know. It basically calculates the distance from a starting point...
-
I'm rarely a fan of posts that are in list form (e.g. "Top 10 tips for writing top 10 lists") but I seem to be in "list m...
-
Theo yêu cầu của bạn Mecuoi (www.mecuoi.com) [FD BlOg] - Lâu rồi ko giới thiệu cho các bạn các style menu nào mới, hôm nay mình sẽ lại ch...
No comments:
Post a Comment