I love contributing to the open source community. Thanks for the gifts @meteorjs!
“You definitely want to talk to him, he’s a really good guy.”
I hear this regularly when I get a reference to talk to someone. Today was one such reference. I had a conversation with a very accomplished businessman who I was told was a “good guy.” He was a successful trader here in Chicago, then…
There Should Be More Art in the World
Art isn’t about high-end, fancy crap that everyone thinks about. Art is about sharing a story - sharing who you are, where you’ve been, and what lessons you’ve learned. Everything should have art - everything should tell a story and express emotions.
Anthony Bourdain is a great example of showing what that means outside of paint and plaster. Food is a great medium for people to express who they are, what they care about, and where they want to go. Those are the restaurants and meals that he talks about and enjoys the most. The ones where the chef takes everything they are and encapsulates that in their end product of food. As an eater, you can taste the emotions, history, and aspirations of a person. That is the purpose of every art medium - express emotion to your user.
Tech should have more art. Apple is a great example. Not because they’re fancy or expensive, but because when you use one of their products, you can feel who the people at Apple are and what they care about. If I had to invent a tagline for Apple to describe their goals, it would be, “Life is awesome. You should live it as best you can.” Their products help you do those mundane things in the most efficient way possible and gets out of your way so you can enjoy your life. Connect with your loved ones when you’re traveling and sharing pictures with those you love.
That’s what I want to do in every company I start - tell a story and transfer emotions.
Websockets are getting some much deserved love
Websockets is a new standard protocol that allows for real-time bi-directional communication between the client and the server. A connection can be established and data can be sent as often or rarely as desired and the connection will still be there. If you’re still unsure about what this means, consider the fact that HTTP was designed for simple one-time requests and responses. Fetch a file and return a file. Websockets allow for true real time communication between the client and the server.
Since HTTP doesn’t inherently support behavior like this, socketio was made to hack together a real-time bi-directional connection over HTTP, but isn’t an official standard. It’s currently the de facto standard for real-time apps, but as the Websockets standard grows and is supported, expect socketio to be used for rare cases.
Interested in learning more? Check this stuff out:
“When I’m introspective about the last few years I think the biggest mistake that we made, as a company, is betting too much on HTML5 as opposed to native… because it just wasn’t there. And it’s not that HTML5 is bad. I’m actually, on long-term, really excited about it. One of the things that’s interesting is we actually have more people on a daily basis using mobile Web Facebook than we have using our iOS or Android apps combined. So mobile Web is a big thing for us.”
This is one of my favorite interviews of Jason Fried. I really believe he has the right attitude towards running a company. The happiness of people is the most important thing in the world, and your business tactics should reflect that. That means doing things for the long term and doing what’s right to make customers and employees happy. The story of 37Signals encourages me to constantly ask, “What’s important here?” when making decisions, instead of assuming what everyone else is doing reflects what’s important.
The Extroverted Developer
My wife and I have been reading a book together lately called “Quiet: The Power of Introverts in a World That Can’t Stop Talking” and it’s been illuminating. The book is an extremely well-researched exploration of the connection between personality and physiology. I really recommend it to everyone. The book gives a short 20 question quiz to find out how much of an introvert or extrovert you are, and I scored a 12, meaning I’m just barely an extrovert. I have a lot of introverted qualities, but I definitely lean to the extroverted side of things.
If you’re in the tech industry, you know it’s unusual for a developer to be an extrovert. Programming has consistently drawn introverts to its profession because of the amount of concentration and solitude it requires. Even when a team of developers collaborate, it’s often online in non-conflicting methods of communication like e-mail, where you can check and respond to it whenever you want, because they’re all generally introverts.
The reason I work as a developer though is because I’m captivated by the potential of technology. From a simple keyboard at a desk, a person can literally change the world. So I balance my personality to produce the results I want. I know there are lots of extroverted people out there that want to start a tech company but don’t know how to program. Their first action point is to go find a technical co-founder who can program, to which many developers in the tech community have said, “Stop everything else that you’re doing right now for your startup and learn to code.” But if your personality doesn’t naturally fit the demands of programming, it can be challenging. Here are some things that I do to help me continue to enjoy my work and grow as a developer every day:
Programming is extremely frustrating for an extrovert - learn how to manage frustration. Extroverts are very reward driven. We see the potential reward of a plan and are so excited by the possibility of the reward, that our brains often times don’t allow us to see the roadblocks on the way to the reward. Introverts are the opposite, which is why an introverted developer has no problem examining problem after problem on his way to finishing a project without losing their cool. I, and every other extrovert, am not the same way. I get so excited about what the finished project is going to look like, that when those small programming roadblocks come up, I get extremely frustrated. “I don’t care if the variable isn’t of the same type — just convert the damn thing!” But I know that about myself and I manage it. When I get up against a problem, I take a deep breath, and usually take a break from the problem or go for a short walk to relax, and remind myself that this is how developing works. Start -> problem -> solve -> problem -> solve -> finish. I’ll get there eventually, so no worries - just relax.
Force yourself to learn something new every day. With being a reward driven extrovert, when we reach a problem, we often don’t care about the issue. We just want the problem to go away so we can get to our precious reward. But in programming, you really, really need to pay attention to how you solve a problem because it will come up again. Introverts love getting into those problems just for the sake of problem solving, so they remember every little roadblock they’ve ever encountered and how to solve it. Since I know I don’t do that naturally, I have to remind myself that even if I don’t care about some intricate, detailed problem way down in the weeds of a computer system, that I should suck it up for a few minutes and learn about it, because it will greatly benefit me in the future.
Always try to solve a problem as much as possible before asking someone for help. As an extrovert, when I run into a problem that I can’t solve immediately, my first reaction is to go out and talk to someone about how to fix it. I learn through talking to people. Introverts however generally learn through reading or doing it themselves. An introverted developer would sit at their computer for hours or days trying everything they could think of to solve a problem before asking someone else. It’s absolutely okay to ask someone for help solving a problem, but you have to understand how to do it respectfully. It’s a waste of an introverts time to ask them about a problem if you haven’t attempted to research it or solve it at all on your own. This shows them that you’re not willing to put in the effort to learn anything new and you think their time is better spent doing your job instead of their own. Introverted developers will love to sink their teeth into an interesting problem, but you always need to at least put in some significant effort researching and tinkering with the issue before going to someone else for help. This is the fastest way to lose the respect of an introverted developer - waste their time.
Sign up to be a beta tester for lots of stuff. Since I’m motivated by the potential of technology, I love waking up to an inbox full of startups’ newsletters about the cool new thing they’ve just built. It pushes me to go build stuff of my own.
Go to tech events in the community. This is an obvious one for an extroverted person like myself, but it’s worth mentioning that this is a big source of my motivation to keep exploring the limits of technology in an introverted role.
If you’re a business student or graduate and you want to build some new cool technology company, just start. Take note of some of my tips above of how to manage your extroverted personality, and start. If you’re respectful of the natural personality of yourself and others, an entire world-wide community of tech lovers will be by your side willing to lend a hand. Good luck!
Follow me on Twitter (@miles_matthias), and subscribe to my newsletter so you don’t miss future posts!
A year ago last Friday I left eight years cutting code and plumbing servers to take my very first marketing job. Prior to then and even before in college and high school, hard skills were what paid my bills - technical work building stuff mostly for the Internet. Everything I had done up until…
I met a girl 7 years ago,
Not knowing how she’d change my life,
We had the patience to let love grow,
And today she becomes my wife.