11 ms·
From Business Guy to Programmer
- AznHisoka 15y agoSo what did you do over at Carbonmade?
- spencerfry 15y agoFunny you should ask! I wrote two articles about the specific things I did at Carbonmade as the CEO: http://spencerfry.com/whats-a-non-programmer-to-do http://spencerfry.com/whats-a-non-programmer-to-do (This was actually based on a 1,000 day old Hacker News comment of mine: http://news.ycombinator.com/item?id=779378 http://news.ycombinator.com/item?id=779378) http://spencerfry.com/whats-a-non-programmer-to-do-advanced http://spencerfry.com/whats-a-non-programmer-to-do-advanced
- apu 15y agoHey, I just wanted to say that I've sent one or more of those links to dozens of people over the past few years. I know "business guys" take a lot of shit on programming-oriented forums like this one, but as a technical guy myself, I found your post invaluable in understanding what "the other half" do. And having recently done some big launches (not quite a startup), I viscerally understand how important that stuff is, despite most engineers' derision. Thanks for the posts, and best of luck with learning to program!
- tswartz 15y agoGood article. Good luck jumping into coding. As a non-tech co-founder I've been considering this, but have always been worried that I'd pour my time into this and not see great results. Looking forward to reading your 90day write-up.
- vibrunazo 15y ago> but have always been worried that I'd pour my time into this and not see great results What exactly are you afraid of? I, personally, think coding is a very important skill to have that can help you achieve many new things, in pretty much any field. I'm interested to hear exactly why you'd be worried otherwise.
- orky56 15y agoAlthough the SV community is very progressive and perhaps this generalization is no longer relevant but it would seem easier and less risky to be a non-programmer than a really bad programmer (i.e. a novice).
- stfu 15y agoI am in a quite similar position as the OP. I have a basic understanding of code and structures, but in order to reach a level that feels "useful" I would have to invest a considerably amount of time and dedication (by useful I am talking of things that can't be "solved" by some guy from Fiverr or Vworker for a handful of dollars). The question always looming is if it is smarter to invest more time into improving your existing strength areas, use the time to do something that is just "fun" (i.e. music, gaming, comment on HN etc), or start with something completely new. And this is most often a really difficult decision to make.
- viscanti 15y agoIt really depends what you want to do. Refining your skills a bit could quickly get you to the point where you can build out a testable prototype for a project. Bill Gates (I believe), talked about the hardest role to fill in a company is someone who is able to bridge the business side of things with the technical side of things. Coming from a business side first, you have a shot at being that guy. There's a lot of noise now about how everyone should learn to program. I don't think that's the case. It helps to be technologically literate (have a general idea of what people are talking about and what's actually possible), but actually programming isn't a necessity. It really depends on what you want to do. I haven't met anyone yet who regrets learning to code. The problem solving abilities you build when learning to code can help in a lot of other areas. It's a time investment, but you'd be amazed what you can pick up from an hour a day of consistent and focused learning/practice.
- fallenhitokiri 15y agoEven if you won't see great results you will be able to understand and communicate more clearly with your tech founders / people or understand their arguments and needs better. It will definitely not be wasted time.
- vibrunazo 15y ago> I plan to follow this up with an article on How I Learned To Program Please post it here. I'd love to read that. And specially, share it with the business guys I know :)
- vladpetroff 15y agoGood luck, you're in for a wild ride :) An advice if I may - just jump into it and build something, don't spend too much time on theory. After more than 20 years in programming I still find this approach the fastest way to learn a new technology.
- aangjie 15y agoOk, any advice for someone trying/considering the reverse?? Am an average programmer a tad tired of programming and foraying into business by writing functional spec, Business Justifications etc.... What are recommended readings i must do?
- mickeyp 15y agoWell, you covered quite a few professions or career paths in your examples. The easiest way to move into business is to realise that you will need to understand the business. This is not some nebulous Zen crap I'm pulling here, but a fact. If all you've ever done is work for a blue chip software company then it's likely that your only "experience" with "users" are those you sell your software or services to: in most businesses your users are the ones you write internal software for. Moving into it can be as simple as asking for training and a transfer to another department or business area (if you work in big corp) or simply involving yourself in the day-to-day workings of your users. If you show a genuine interest in learning how they do their work you can use your existing IT skills and your honed, technical mind to making their lives easier. You'll be surprised by just how utterly inefficient most things are. Fixing these deficiencies range from yanking data from crufty Excel spreadsheets on network drives into a proper database or munging crap data or other sort of automation tasks. The only real way to learn a business, aside from domain areas like finance where you're as likely to receive in-house training, is to sit next to them and help them do their jobs. (Sneaky Ninja edit: Your line manager may hate that you're leaving as he's losing a developer, but the business may well end up loving you even more. You're no longer a cost centre but you're actually improving the business.)
- deleted 15y ago[deleted]
- orky56 15y agoThe business side typically boils down to product management, marketing, or business development. All 3 areas involve making relationships and getting things done (closing deals and/or shipping). It's easier and probably quicker to learn while doing. Not sure how to price? Price at different points and go with what yields the most profit. Being scientific and prioritizing the customer experience goes pretty far.
- killnine 15y agoDid I miss the statement of language choice?
- spencerfry 15y agoRuby, Ruby on Rails, and JavaScript (mainly JQuery). I'm just beginning to learn HAML and SASS, but for now it's been ERB and straight CSS.
- killnine 15y agoThanks. I like your choices
- bomatson 15y agoGood luck, I've been doing similar the past six months. My thoughts: ship product fast and make a lot of mistakes Language? If you are learning RoR: Zed Shaw's LCTHW and Hartl's Rails Tutorial are great. Learn to Program by Chris Pine is also a good starting point for syntax, but focus on pair programming (where the real learning happens)
- tsewlliw 15y agoAs a fairly experienced programmer, where are all these business guys who are so psyched about learning to code??? Any in AustinTX? I would be seriously psyched to pair with a motivated total "noob" because I remember how exhilarating the first few years are, and how great it is to have your mind blown weekly or monthly by some subtle concept.
- spydertennis 15y agocontact info? =)
- bomatson 15y agoIt is exciting! I've also found it to be insanely great way to express creativity, like when you first learn piano. I'm in LA but would love to hear how you would approach pairing up to work with a 'noob' like me. I'm bobby.matson [a] gmail
- jonbishop 15y agoWish you were in San Francisco!
- johngalt 15y agoGood for you, can't wait to see your progress. My favorite part about learning programming? The utility gain is linear. A novice learning to use =if() in excel is immediately more useful. At the top there is plenty of new ground for experts to cover. Contrast this to other fields that have a steep utility curve (novice aerospace engineering?) or diminishing returns (accounting).
- chao- 15y agoDefinitely going to follow this. I get a pretty steady stream of business guys who come to me wanting to be, in the words of one, 'less useless' on their projects. I try to provide them with some ways to get started and help them set some reasonable goals. Being able to see the real-time trials and successes of someone doing precisely this would provide another meaningful data point with which to improve that advice. And linking them to this might help keep their perseverance up as they go down their own path. While I recognize that there are probably ways to improve the business-side utility of a 'business guy' (or gal) who feels 'useless' at times, that's not something I am as qualified to help them fix. Furthermore, I'm always heartened by someone who is interested in learning programming, as opposed to not caring that they don't know what an API is or what MVC means, or even pertains to.
- aspir 15y agoTo other biz dudes learning to code (I'm one as well): it's not as hard as you might think. It can be frustrating though. Understand that you may need to start slow, and you'll fight a lot of bugs. Every few weeks, you'll seem to have a epiphany where "stuff makes more sense." Take pride in those moments and seek them out. They're addicting as hell. The moments will be small at first. Working through an error message, reliably using methods for the first time, figuring out how to prank your friends (personally, this is a major non-financial/career fulfillment reason for learning to code). Tell people about them, though it may be a little embarrassing to say you fixed a typo after a hour long headache. Then the epiphanies will get more substantial. Building a login system. Debugging an email notifier. Figuring out you don't need rails scaffolding anymore. Figuring out how to push more logic into the model and out of the controller. Integrating some no-nonsense libraries and APIs. Tell your friends about these -- you're earned it. Those first few hair-tearing periods were you paying your dues. Some point along the way, you'll start to see problems differently. You'll see solutions instead. I've always felt these moments were the equivalent of the "language dreams" my old foreign language profs would talk about. When studying a new language, you'll eventually have a dream where you converse in your studied language and you know what's going on. When you start to see solutions in code, no matter how technically skilled you are, you know you've reached a similar tipping point.
- hkmurakami 15y agoJust had one of these "aha" moments recently regarding Python List Comprehensions [1]. It's definitely an amazing feeling to have struggled over various ugly or half broken implementation for a few days, done research on the task at hand, then suddenly, understand an elegant solution to the problem. [1] http://stackoverflow.com/questions/2397141/how-to-initialize-a-two-dimensional-array-in-python http://stackoverflow.com/questions/2397141/how-to-initialize...
- demian 15y agoI know a lot of business/programmer types, and most of them remind me of Architects (not the IT or App ones, but the ones that makes buildings). They (b/p types) also tend to take a kind of "Master Builder" road, kind of "creative but profesional", with the potential too look beyond the product up to society itself, even to the point of considering philosophical and economical trends to 'get' how it 'all fits together'(the kind of humanistic contextualization that Architects do). More often than not, at least in my experience, they also tend to learn design. Maybie not to the specialist level, but to be able to talk to them, coordinate with them, and to get the 'feel' and articulate the vision of a system.
- goatcurious 15y agoI have seen both sides and, at the risk of oversimplifying, I feel the core is the same for both programming and business. For business guys: a good place to start is to gain a deep understanding of how the app is built. At the core it is not much different than that financial model you had built. It’s just written in a different 'language'. Start today: have in depth conversations with your developers, understand how each element interacts (more detailed is better). Learn what the developers are struggling with, and try to solve those problems with them. Sometimes, you will pin point the source of the problem before they do. That’s a good feeling. If and when you decide to learn the language, this experience would be massively helpful. For programmers wanting to learn the business aspects: The key lies in developing a good hypothesis, and in constantly refining it based on what you hear from the customers, competitors, market, investors, etc. Approach it like coding; each hypothesis element is an object - it takes in some inputs and throws some output. Check whether all elements are mutually exclusive and collectively exhaustive. The process is not too different from developing that app. Just make sure to not get caught in the details. Question everything constantly - is this the most important thing and how. And yes, you will get by wonderfully well if you ask others, nicely.
- jsm 15y agoI am in the same boat. I started learning web development about 6 months ago. The best way to learn is by making things. Many of my friends that have been interested in learning to program and started using resources like codeacadmey or the w3schools tutorials have ended up discouraged. I think they assumed that those resources were designed such that you'd be a programmer as soon as you diligently completed each lesson. My friends that assumed that ended up bored and moved on to other things. It's best to follow your curiosity. Work on projects even if other people are out there doing the same thing better. I view everything as a learning project. My first projects were http://roommater.us http://roommater.us and http://essayr.com http://essayr.com.
- paulhauggis 15y agoIt's much easier to become a business guy after you already know how to program ;-)
- aen 15y agoFamiliar sentiments. I've been a designer all my professional life and belonged to the find-a-developer-for-idea-X category. I've been lucky to have had the help of really good tech friends but it never felt right. It's like sculpting with a proxy. A part of me yearns to feel the plaster and chisels with my own hands. So like you I just did it. I launched http://mocku.ps/ http://mocku.ps/ a few months ago, by putting together everything I learned from books and tutorials, asking on Stack Overflow, trial and error and sleepless nights hunched over my code editor. I almost permanently pissed off my wife. Craving more now I'm on to my next project http://paperi.st/ http://paperi.st/. It feels great to be able to produce what's in your mind by yourself.