Peter Welch on English:
But if we accept the chaos that informs the language, there's a lot of expressive power to be found.
Holds true for Ruby, too, perhaps the most English-like of all programming languages.
Edsger Dijkstra, a year before my birth, on what would be my first programming language:
“It is practically impossible to teach good programming to students that have had a prior exposure to BASIC,” he groused in a 1975 essay titled “How Do We Tell Truths That Might Hurt?” “As potential programmers they are mentally mutilated beyond hope of regeneration.”
When I was in the sixth grade, without any peristent media on my Atari 800, I spent hours copying, recopying, and later completing my brother's high school computer homework.
Years ago, before I began working remotely full time, I would often steal away to a hidden conference room on some sparsely inhabited floor to hide out and work. Getting work done often meant getting away from the office chatter.
The sounds of other people working can be overwhelming. It doesn't take much to overload my senses and shut down my brain.
The nature of remote work changes the nature of communication. Chatter for remote workers comes in a different form. Messages are often asynchronous and non-blocking. The result is longer periods of intense focus and concentration. Productivity ensues.
As much as we still complain about our clogged inboxes, for remote workers, noise is seldom the problem. It's silence.
If a little quiet is good for work, then more quiet should be better, right? For me, a prolonged lull in email, chat room conversations, and @mentions can have its own negative effects.
Even the most independent people need regular human interaction. I normally work at home, where we also homeschool our kids. When not at home, I frequent local coffee shops with friends in the industry. I'm rarely alone.
When online communication lapses, it's easy to feel isolated with that kind of distance between team members.
When people stop asking you questions it's easy to begin doubting (however misguidedly) the value you bring to the team.
Tips for handling the silence
Chatter is seldom constant. Every din will eventually recede during periods of travel, holidays, and life events. It's the artificial lulls that you have to watch. Here are some things that help me handle that cycle.
- Never work alone. It sounds obvious, but your chances of getting isolated decrease considerably when you're actively part of a team. Enlist support for features or initiatives you want to work on, or pitch in on someone else's efforts. We're better together.
Look out for each other. On the flip side, don't become so blinded by your own TODO list that you fail to notice when a co-worker has gone radio silent. An email, IM, or phone call has real power to help someone feel more included. I have no official HR responsibilities, but I try to reach out to new GitHubbers a few weeks after they're hired, just to say "I'm glad you're here, are you getting plugged in?"
Embrace the rhythm. Take advantage of those brief periods of peace and quiet, knowing things will get loud again soon.
Embrace the noise as the soothing sounds of -ing.
GitHub's new Atom editor is out in limited beta.
I've been blessed with a finite number of invites to share with you, my Internet friends. One can be yours for opening a pull request on someone else's public GitHub project that makes a meaningful contribution. Here are some ideas:
- Add an RSS feed to someone's Jekyll blog.
- Fix a bug
- Add a feature
- Correct a typo
- Add a README, LICENSE, or CONTRIBUTING guide
Just mention me on the pull request to claim your invite.
Not sure it's my color, but too clever for a tee geek to pass up.
Great list from Zach of things you've only seen if you developed on the web when Bill Clinton was in office or if you have recently browsed the web site of any local restaurant.
Using data and Science to refactor at GitHub.
Jim, it was fitting that I heard of your passing at a Ruby conference.
Music can be an effective firewall between the ears and the brain, enabling you to hear your own thoughts.
Here are some ways teams can deal with blockers.
Code quality still matters a lot. But when pondering how you could improve your coding even further, you should consider aiming for better commit messages. You should request this not just from yourself, but from your entire team and all the contributors. The story of a software matters as much as its latest checkout.
Excellent tips from Mislav for investigating changes using a project's Git history.
Thoughtful piece by Timothy Clem on how we choose to craft the stories of our lives online:
My favorite hashtag by far is #nofilter. It’s the dichotomy of needing to communicate that No really! It looks exactly like this, with the wonderful truth that the existence of the photo is a very strategic filter on how you want the world to perceive your life. And to top off the irony, you make sure to connect said directed experience with every other #nofilter going on in the world at that moment. Brilliant!
And yet, I secretly revel in the experiences that I don’t share. The moments that happen off the grid. I go out of my way sometimes to not record and not broadcast.
I'm reminded of Captain Miller, sharing stories with Private Ryan trying to escape their battlefield reality:
Private Ryan: Tell me about your wife and those rosebushes?
Captain Miller: No, no that one I save just for me.
In which I share some of my workday hacks.
Learn to navigate using the core vim keys in a Tron-inspired multiplayer game.
Arfon Smith has created some interesting graphs that visualize the collaborative nature of a few open source projects on GitHub using pull request data.
Recently, Reed Esau has amassed quite a list of Vim plugins for writers.
Fantastic cinegrams for the upcoming second season of Netflix's House of Cards starting in two weeks.
Amazing video from Marshall Culpepper's PEPPER-1 high altitude balloon. I'm looking forward to PEPPER-2.
Rather than assemble content in server-side processes, static web applications rely on the user's browser to drive interaction and content rendering. Once considered only useful for static content, modern static web apps can dynamically fetch data, synchronize multiple users in real time, and more.
While I think web developers who want to build apps should seek fluency in a server-side technology, there is a place for static web sites for small micro apps and MVP prototypes. Thanks to the rise of APIs that support CORS and services like Parse that provide a ready-to-go backend, these apps are more powerful than ever.
GitHub is also sponsoring an upcoming hackathon, the first such contest I've seen just for static web apps.