I'm a prolific blogger, and for a while I've been kicking around the idea of starting a new blog to share thoughts with my colleagues about software development. I decided to take the plunge today. I don't know if I'll be updating frequently or not, but add me to your feed and you can read my one post a year if that's how it turns out. :) Also, I encourage people to ask questions, as it will give me more incentive to write new posts. The only restriction is that I'm going to insist on keeping this as a purely professional blog, which means I will not field any questions that aren't at least marginally related to software. If you want to discuss other topics, look me up or email [rglasser *at* apollowebworks *dot* com].
The title of this blog was inspired by a quote from The Mythical Man-Month, by Frederick Brooks. When I read it, I discovered that it perfectly encapsulated the reason why I decided to pick software as a career path.
Brooks wrote:
"The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures.
Yet the program construct, unlike the poet's words, is real in the sense that it moves and works, producing visible outputs separate from the construct itself. It prints results, draws pictures, produces sounds, moves arms. The magic of myth and legend has come true in our time. One types the correct incantation on a keyboard, and a display screen comes to life, showing things that never were nor could be.
Programming then is fun because it gratifies creative longings built deep within us and delights sensibilities we have in common with all men."
I hope you enjoy this blog.
Thanks, Kazim. I'm trying to teach myself programming, partly as a backup skillset for when my IT support job gets farmed off to distant lands (or really smart AI), and partly because people like you seem to enjoy it so much.
ReplyDeleteI'm currently pushing my way through Javascript tutorials, finding out that programming seems to involve a ton of memorization (commands, syntax, etc.) Not my strong suit.
Good luck with your projects
Hi James,
ReplyDeleteOne thing you will gradually see about programming is that even if there is memorization involved, if you do it right it comes naturally. People learn through repetition, and one thing you'll be doing a LOT is repeating the basic commands and structure of your chosen language. After writing and "if-then" construct a few dozen times, it should quickly become second nature. If not, that's what the internet is for.
I rarely spend time intentionally memorizing a new concept. If I read about a technique and it sounds important, I make a sample program for practice before doing anything else with it. Then, once you've made your mistakes on the first pass, it becomes easier to get it right when you apply it to your professional application.
For example, I occasionally use CSS, but because I don't do it often, I still haven't memorized a lot of command details, like "Do I use 'size' or 'font-size' here? Is it a # symbol or an & symbol before a hex color definition?" But I do have organized online bookmarks (in delicious.com) so I can look up the answer quickly and get on with the actual coding. Since I don't use CSS often, it's not too big a waste of time to look it up, and if I started using CSS all the time then I would remember it.
Moral: If you haven't memorized what a language or a command does, it just means you need to practice with it more.