TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: How did you become a software engineer?

58 pointsby mrtbover 3 years ago
I&#x27;m preparing a ≈20min talk about opportunities in software to give at a London school with students aged 14-18. I want to give insights into the software industry which are relevant to the decisions students will be making: which subjects to study or focus on at school, whether to go to uni, but more generally how to invest time well by learning valuable skills and discovering what their strengths are and what they might like to do in the future. As part of my preparation, I&#x27;d like to collect some real examples of journeys people make from their teens into professional software roles, but also how programming skills may have served you well as a hobby or in roles that aren&#x27;t primarily about developing software. What&#x27;s your story?<p>Some questions I&#x27;m interested in are: How did you first get into programming? Were any books, blogs, forums, or people particularly helpful for your growth? What is it about coding that got you hooked?<p>What is your experience with university? Did you get a degree, was it worth it, do you think it helped you find work, what did you love&#x2F;hate about uni?<p>How did you get your first paid work (family &amp; friends, internship, freelance, full-time)?<p>What do you do now and what do you love&#x2F;hate about your job?<p>------ I work back end in Golang at a fintech, but I got into programming when I was homeschooled with ROBLOX and making iOS games with cocos2d before doing an MEng in Computing at Imperial College London. I really like making things, intellectual work, and collaborating with other people. I like the pay, that I can find remote work or move country if I want, that I&#x27;m always learning, and I have enough time and energy to pursue various hobbies. Sometimes work is tedious and I don&#x27;t like sitting at a desk for 8 hours, but overall I love my job and want to help others find their way into similar roles if it&#x27;s right for them.

70 comments

igotsideasover 3 years ago
I had been working in a call center for 4 years and had not had any growth whatsoever. I was broke, lost, and felt trapped at my job. I would look at job postings on dice and monster but didn’t have any of the skills mentioned and thought I would have to go to college to get a decent position. I didn’t have the money to go back to school so I tried something else. I e-mailed 30-40 tech companies, asking if they had any internships to get my foot in the door. Two companies replied back. First company was a desktop support position and the second company was a marketing internship at a coding bootcamp. I took the unpaid internship at the bootcamp. I realized I didn’t enjoy marketing right away but stuck with it cause it was better than a call center and I wanted to learn how to code. I ended up becoming friends with some of the engineering instructors and that’s when I was introduced to programming. They told me what to focus on, study, and build. So when I wasn’t at work or the internship, I was reading and building. After a while, I got my first job and been writing code for almost 8 years now.<p>I can’t lie, I got into it because of money but I ended up enjoying building web apps and solving problems.<p>Things that I enjoy now are the people. So many cool, smart, and helpful devs out there. The flexibility is really nice.<p>There wasn’t one book or website. Honestly, reading documentation or learning a concept and just practicing that one thing until you completely understand it helps me. There’s just so many resources online now so I’m sure there’s something for everyone.<p>Edit: wanted to answer more of OP’s questions.
javajoshover 3 years ago
I suggest that you read &quot;Mindstorms&quot; by Seymour Papert (inventor of Logo). I think he gets to the heart of the (healthy) resonance between young minds and computers -- efficacy. This is a different relationship than those engendered by, for example, the casino-like air of social media apps and many (if not most) games.<p>My own observation is that, because modern computers are so small and so fast, you have to intentionally zoom in and slow things down to understand them. This requires special tools and special knowledge that takes patience and practice to acquire. For better or worse these actions aren&#x27;t very granular: you&#x27;re either using an app, or you&#x27;re looking at text, and everything in-between has to fit between your ears. Plus, there are many competing &quot;coordinate systems of thought&quot; (language, but also tools, architecture, convention, idioms) so this is where a lot of people fall over.<p>Comparatively, we had it easy with the Apple IIe. The distance between running and editing was smaller; the mental model was (mostly) unitary - Basic, or in my case, Logo. The runtime model was beautifully simple, and physical, and easy to understand. It&#x27;s not easy, but I think the best teachers do their best to recreate this simplicity.
JohnFenover 3 years ago
I got into programming when I was 12 as part of a TAG program.<p>Interestingly, though, I didn&#x27;t intend to go into programming. My interest was digital electronics. However, as a 12 year old boy in a poor family, I couldn&#x27;t afford to buy parts -- but programming is free as long as you have access to a computer (I&#x27;m in my mid 50s, when I was 12, access to a computer was rare).<p>I&#x27;ve been programming ever since -- and once I started doing it professionally (in my early 20s), I resumed my interest in electronics and carry that on to this day as a hobby.<p>I got my first paid work through a personal contact.<p>I won&#x27;t comment about how I feel about my job right now, because I&#x27;m deeply burnt out and have no positive feelings about it. Once I figure out how to overcome my burnout, I&#x27;m sure that my love of it will return. I hope.
meheleventyoneover 3 years ago
I started programming at seven on a ZX Spectrum that I still own. Basically I wanted to make my own games and the only way to do that was to learn to program. I spent a lot of my teenage years making games, mods and websites. All the books that are relevant for that period aren&#x27;t really anymore except for historical interest. I also got to grow up as the Internet grew up for better or worse.<p>I went to Uni for four years studying Computer Games Technology. It was great for meeting likeminded people and networking with local companies as well as providing space for making more stuff. Won a few awards for my student work and went off to work for a startup after I graduated. That folded after a few months and I ended up at a local AAA studio. Sixteen years later and I&#x27;m still making games. I got that first job with just a casual chat over coffee the day after I was wrestling in jam and am still working with the friends I made at the first big studio!<p>Right now I&#x27;m lead of the Community Engineering team for a web-based game development platform called dot big bang (<a href="https:&#x2F;&#x2F;www.dotbigbang.com" rel="nofollow">https:&#x2F;&#x2F;www.dotbigbang.com</a>) so running a small band of multi-talented people making games for the platform, live streaming and that sort of thing. By far one of the most fulfilling jobs I&#x27;ve had as I help out other game developers all day and enjoy a lot of creative freedom.
travisjungrothover 3 years ago
Very short version. I didn’t go to university. I worked a bunch of odd jobs, then went to flight school. Worked as a pilot, owned a small school myself. I took up coding for fun. I started with Head First PHP. I was always trying to make small apps to make money (never really worked). I made some Wordpress websites for gyms and restaurants. I’d <i>highly</i> recommend that as a way to pad a resume. Just don’t do the hosting yourself.<p>Decided to learn Python and just read a bunch of books. Got a job at a startup in SF. Did that, then another job, then tried sales, founded a startup (failed) and just got a job as a software engineer at Netflix.<p>I just like ideas. Software is great because it’s like math in that a lot of it is just pure idea stuff, and you also get to test if you’re right or wrong (say compared to writing prose). Some stuff isn’t proven and that’s cool too. If the job market for aerobatic instructor and software engineer were switched, I’d probably be flying for a living and coding for fun.<p>I wouldn’t exactly suggest following my path. I’ve been quite lucky. If I could go back in time and spend a week with my young self, I’d make a plan to get a math or CS degree, probably math. I like graphs a lot. I’d also learn how to code on my own.<p>But I can’t go back in time and that’s fine. Probably for the best.
eyelidlessnessover 3 years ago
0. I think my original idle interest was watching my cousin build simple games with Basic and HyperCard. We were both around 10 I think? This was all unknowable magic to me.<p>1. In high school I was recording music and wanted to share it with the world. There was nothing like SoundCloud yet. So I built my own site. I started with Dreamweaver…<p>2. My then girlfriend decided to learn HTML and rebuild her personal site. I thought that was cool as heck and did the same.<p>3. I got tired of manually updating HTML, learned enough PHP and SQL to hobble together a basic content-driven template system.<p>4. By this point I was interested in programming for its own right, but continued to iterate on my own site until I had effectively built a more general purpose CMS. (It was super cool for the early oughts! It had in-situ design agnostic content editing)<p>5. That landed me my first programming job, with a company making their own custom CMS. This was basically brochureware work for a few years.<p>6. A buddy and previous coworker asked me to do a quick 2 week contract rebuilding a marketing website for the startup he was at.<p>7. They liked me so much they kept me on full time. I eventually led their frontend team, gradually moved backend and wound up designing distributed systems for their cloud integrations.
kartoshechkaover 3 years ago
Maybe it&#x27;s the interest of watching father playing quake&#x2F;cs 1.6 when I was a preschooler, but I think no other activity could match the amount of joy as playing pc games and surfing the web, so I kinda naturally gravitated towards computers.<p>Parents got me in the nice school where we&#x27;re studying QBasic since the 5th grade and I still remember how QB core library contains functions for drawing a simple geometry. Coupled with a for loops you could do some dead simple animations, and it was fascinating.<p>First two years in uni were quite fruitful and I&#x27;d managed to land a internship at internationally known company. Last two years were a liability, and while doing the minimum to avoid dropout, I picked up Sapper&#x2F;Svelte, then Elixir.<p>Writing a thesis subject in Elixir&#x2F;Phoenix was perhaps the highest gain spontaneous decision in my life to date. Nobody ever learn Elixir in uni as a part of a course, so your adversary candidates pool is tiny, comparing to the vast masses of java&#x2F;python&#x2F;js&#x2F;c++ graduates. Perhaps this was the main reason of me being hired fresh outta college with less than a 3 months of experience :)<p>But the job itself is meh:<p>- fully remote, no spying, can spread 8h how I want (4 in the morning and 4 in the evening, doing whatever during the day)<p>- pay is higher than I would ever get at junior position in mainstream languages<p>- team is nice<p>- but ridiculously low-quality legacy code<p>- previous devs had left with close to no documentation, so codebase ownership is low<p>- long time lags in processes, mostly due to the management
thoughtpaletteover 3 years ago
M 33. Sr Software Engineer. It all started with online gaming. Was playing Tribes PB Mod from 2000-2004. In 2004 my clan leader quit and left me the clans website (on a .tk domain back then). The website was in PhP and there was also a PhPBB Forum attached. In editing roster changes it was my first experience into code, or code editing.<p>Due to the popularity of forums, I also got into creating Forum Signatures, which were little images that you could create and add to the end of your posts. Some forums also supported little code snippets. I started designing these signatures for clan members and friends and tried to get a design position on clangraphics.com. I failed a few times but the pursuit ultimately got me into design and abstract art. Paint Shop Pro 8, PS 7, Bryce 5.5, Apophysis, Terragen, etc.<p>In my senior year of HS, I had a Sr Art Show and displayed all my computer graphic work, got great feedback and decided I wanted to get into design. After applying to a for-profit design school, I started following more interesting artists doing web designs, etc (DepthCORE, DeviantArt) and started to do some Web Design stuff.<p>At my day job, I listened to the Boag World Podcast, which taught me about Zen of CSS Design, Don&#x27;t Make me Think, Sitepoint, nettuts, etc. Started playing around and coding some rudimentry designs I made.<p>College made me bitter after transferring to Chicago (whole other story), and realized it was my portfolio, not my degree that mattered to my potential employers. After 8 months of hardship, and some very small freelancing, scored a contract position at a design agency who eventually hired me full time (2010).<p>Was a long journey, but definitely worth it. I still joke with my mom that online gaming got me where I am today.
MathMonkeyManover 3 years ago
A friend of mine in the neighborhood started playing around with RPG Maker 2000, and then sat us all down and taught us how to use it. Later, the older kid whose house we&#x27;d hang out at, his parents bought him Visual Studio 6 (C++), hoping that his constant time on the computer would make him a programmer (it didn&#x27;t).<p>The RPG kid and I copied the compiler, though, and went to town.<p>I later went to college at the state school and studied Physics (out of interest) and Music (out of not wanting to stop playing). I&#x27;ve since stopped playing.<p>When graduation was near, I didn&#x27;t do well on standardized tests for Physics graduate schools, and really I don&#x27;t think my heart was in it. I didn&#x27;t get accepted to any schools, so I went to the job fair, since my engineer&#x2F;comp-sci roommates were doing that.<p>I interviewed with Microsoft and Bloomberg. Microsoft told me no in the last on-campus round. I didn&#x27;t know that the traveling salesman did not have a polynomial solution (if P != NP ;))<p>Bloomberg said yes. I think that my over the top nerdiness and perhaps confidence helped. There&#x27;s one thing I remember, though. They asked me my SAT scores and when I told them, they seemed deeply impressed. This makes me wonder if the rest of the interview was just a show.<p>Once I had a good paying job at a reputable firm in a big city... I guess that makes me a programmer. Once you&#x27;re in, you&#x27;re in.<p>Now it&#x27;s ten years later and I&#x27;m working at Datadog, doing C++ stuff (Bloomberg is largely a C++ shop, and I have yet to pivot in any significant way). I like my job. I&#x27;d be coding for fun anyway, though. I still code for fun. No kids yet.<p>Thanks for asking. :)
评论 #28458393 未加载
BlameKanedaover 3 years ago
&gt; How did you first get into programming?<p>I wanted to know HOW someone could take a bunch of text and turn it into a website. I didn&#x27;t know if any dragging and dropping of text and boxes was involved, or if it was some other kind of magic. A few years ago I bit the bullet and attended a bootcamp, and got my first job 7 months later. After 2.5 years there, I got my second job.<p>&gt; What is it about coding that got you hooked?<p>I love the fact that you can make things out of nothing, and that we&#x27;re at the forefront of emerging tech.<p>&gt; What is your experience with university?<p>I have a two-year Associate&#x27;s degree and a 4-year Bachelor&#x27;s degree, both of which are completely unrelated to CS.<p>&gt; How did you get your first paid work?<p>Prior to my first job I was approached to make a website for someone&#x27;s business, but it&#x27;s like I&#x27;d walked into a red flag store. The client didn&#x27;t really know what they wanted, the pay they offered was minuscule, and most importantly I got the strong sense that the client was going to be incredibly difficult to work with. My first true paid work was through my first job.<p>&gt; What do you do now?<p>I&#x27;m a software engineer at a medium-sized tech company. The tech stack and best practices are leaps and bounds better than at my first job, but the learning curve is much steeper.<p>&gt; What do you love&#x2F;hate about your job?<p>Like: The pay, the stricter practices (people care about the future), the company&#x27;s product, and people work pretty normal 9-5 hours.<p>Dislike: There&#x27;s a LOT to learn. It&#x27;s not the fault of the company, though, it&#x27;s just the reality of the situation.
zschuesslerover 3 years ago
I got started because I lived in a town of 400 people and there was nothing to do. My family weren&#x27;t farmers, yet all my friends were. One day Dad brought a computer home with a 300mhz processor and it was either learn to be entertained by that, or twiddle my thumbs.<p>The first burst of inspiration that I wanted to do software was neopets.com. The idea of neopoints somehow magically being stored in this thing called a database and shared through a virtual economy created a deep curiosity in me. Enough that the early days of apache, php4, and mysql were enough to slog through as a kid (truly painful back then!).<p>I didn&#x27;t get a degree. I went to a day of university and dropped out because they wanted six figures for things I already knew. Financially it was worth it to do that, but I am sad I wasn&#x27;t able to live the &#x27;college life&#x27; my friends did, and didn&#x27;t make the same connections they did. Freelance life can be lonely unless you put the effort in to network.<p>My first paid work was SEO and content writing, then when WordPress 1 launched I found gigs making websites with it. I found clients through online forums and then asking those clients if they knew anyone I could do work for. The best gigs came from those referrals. Honestly I&#x27;m not sure I could do that in today&#x27;s atmosphere! Back then there were no freelance websites (like Upwork) or video call systems to verify you weren&#x27;t a 17 year old kid. Today it&#x27;s much harder to find gigs among strangers, especially if you&#x27;re young. My best months I was 19 and making $10k&#x2F;m without my clients knowing I was so young :)<p>I&#x27;m an engineer today but have dabbled in other roles like UX, design, PM, bizdev. I love the flexibility and the compensation the right engineer role provides. I wouldn&#x27;t say there is anything I hate about it, life is good!
bigmattystylesover 3 years ago
I was a mediocre (bad) electrical engineer. Software just clicked. I personally believe EE is just harder. Maybe my brain is just better suited to programming and one is not harder than the other. I do know it took me 20 years to let go of the fact I’d never be a true EE. Ego is weird. Fortunately, even in EE, programming opportunities are aplenty and I was able to transition.
karaterobotover 3 years ago
The first time I dabbled in programming was making modifications to QBASIC files in DOS. I wanted multiple lives in Nibbles, and I wanted to make nuclear bananas in Gorilla.<p>I continued programming as a hobby, usually as part of some other project: making video games, websites, tools, or visualizations for school. Sometimes for pranks.<p>I ended up working as a developer for about 12 years, mostly in Javascript and Python, but also Ruby, Lua, and Java for a couple years.<p>During that time, I was also learning design, and I&#x27;ve since switched to doing that.<p>I take the weird position that design is not all that different from engineering, it&#x27;s just working on another part of the process. What I like about programming and design is that they&#x27;re about problem solving, and you are given a set of requirements and goals, and your job is to find a best-fit solution.<p>What I don&#x27;t like about programming (the kind of programming I was doing) is negotiating a rat&#x27;s nest of dependencies: these 15 poorly documented libraries, this hip new framework, and this methodology we&#x27;re using now because someone wrote a persuasive Medium article. The constant churn of fashion-based engineering got to be a drag. I still like programming, I just don&#x27;t do it for money these days!<p>I&#x27;ve never taken a CS or SE class: my degrees are in English and Library Science! My knowledge has been cobbled together on an as-needed basis. So, there are major holes in what I know, and I sometimes feel like a guy who knows a few tricks and uses them for everything. If I&#x27;d known what my career would be, I probably would have studied those subjects instead.<p>On the other hand, the best programmers I&#x27;ve ever met did not even <i>go</i> to college, they were self-taught. So, it&#x27;s clear that you don&#x27;t need a degree if you are motivated to learn.
sjg007over 3 years ago
I started fixing PCs when I was a kid, I even started a PC repair and networking business. This all happened because my parents had a PC and I would tinker with it, break it and have to fix it before they got home from work. I also had a few friends of similar aptitude so we would all work together.<p>Quickly moved on from Windows to Linux systems. Got a job at 16 writing bash and Perl scripts as well as HTML for the local University. This was right around the time of the web taking off in 1997. I was lucky to have early Internet access at home etc... I then picked up python at some point. It wasn&#x27;t until University that I finally grokked C++, Haskell and later Java. If anything I had too much hubris but in reality, I had always been afraid of programming because I felt it required too much math. I was also deeply unaware of the business opportunities in retrospect at every level... I think I thought things were supposed to be harder or difficult to be a real business. PC repair and networking certainly wasn&#x27;t scalable though.<p>Today I work in machine learning after going through grad school. The best part of grad school was being exposed to the problems and working with really smart people. This was in the early days of bioinformatics. Today I think there&#x27;s even more opportunity but it was foundational in retrospect.<p>Today my kids are working on Roblox games which I hope will motivate them to learn programming. Maybe we will build some robots too. I hope the ability to see the code in action will inspire them?<p>I bought them iPads and chromebooks and they seem to be doing well with them. I hope they will ask me to turn off the parental controls and some point so they can get into the internals of the chromebook at some point but right now they are a little too young and are just learning to use the mouse and keyboard after the whole touch experience. We probably need touch screen chromebooks I guess.
pengoover 3 years ago
I had a non-technical management role and a business need that could only realistically be met with software. I had no budget and company policy prohibited purchasing or commissioning software anyway. So I thought &quot;how hard can this be?&quot;, took a laptop home and taught myself to code.<p>I started in BASIC because that was bundled with the laptop. I quickly became aware of its limitations and moved to C (working in DOS back in 1990).<p>From there I became the company&#x27;s go-to person for glueware. We had a dozen silo&#x27;d systems that all had some form of file or COM port based I&#x2F;O, and I was soon proficient at getting them to talk to each other.<p>Six years after I wrote my first line of code I hung up my management lunchbox and became a fulltime software engineer.
BuckRogersover 3 years ago
Most people I work with seem to have just fallen into it. I was set since I was a child in the 1980s to become a professional programmer as I played around with BASIC on a Commodore and QBASIC on a 286. But as 2000 came around, everyone told me that programming was dead due to outsourcing. That was the idea at the time. What was true was something in the middle- it was becoming a damaged field. With no professional organization &#x2F; union mechanism to keep it afloat as a bastion of the middle class. So I went into networking and mostly took whatever job was available, doing systems work and then devops.<p>After seeing Azure and AWS come online, that felt like a field that would shrink to a few cloud engineers, rather than be a field of CI&#x2F;CD experts. I took a gamble to leave my job and study up, as I did have VB courses in high school (I attended the local college while in HS) and Java in college. So I studied up on Python, not knowing if I would fail at this endeavor and going to plan B (devops). I ended up switching to the .Net space and C#, and after months of 2-3 interviews a day, 3-4 days a week leaving my head empty and buzzing at the end of the day, I finally got hired.<p>I&#x27;ve worked on a few projects ever since in that same job, and still enjoy the coding, but don&#x27;t enjoy the time limits or the general disrespect that you won&#x27;t get in other careers. You&#x27;re making Fabergé eggs and you&#x27;re treated like you work in a factory. If I were to do it over again I would probably have gone into welding or another trade. Work where you can&#x27;t just hire someone across the globe for.
danpetrovover 3 years ago
I have been studying programming since my early childhood years, because apparently I had decent logic skills and parents in the city would sign up kids for this private math and programming evening school.<p>Later though I originally picked to pursue an aerospace engineering degree and was working as a live dealer at a live casino company while studying, but the same company also had a large engineering department, and it was very tempting. So I went back to my roots, started out as a manual tester to get the foot in the door, and later slowly transitioned to automation QA and then to a backend developer. Now I switched universities and am doing a Bachelor&#x27;s in Computer Science, mostly for fun and to fill in any knowledge gaps.<p>Really the new company didn&#x27;t care about a degree, and I honestly learned way more from independent study and my work than I did at university so far. Blogs, conference talks and books are really what helped me a ton. While the new job is quite difficult, my colleagues are great, and we take very relaxing breaks and do lots of activities outside of work. Knowing that my work impacts millions of people around the world is quite inspiring.
eapplebyover 3 years ago
My high school had a comp sci class (this was 1997, so only the 2nd year they offered the class). My father did some programming when he was younger and suggested that I take it. The class taught Turbo Pascal, which can be a little difficult for some people, so even though it started with over 90 people, there was only 18 of us left in the end. All of us passed the more advanced AP test and I think 15 of us got 5s. Credit goes to the teacher (Mr. McCollum at Calabasas High School), since I think lot of us went into programming as a career with a really high level of confidence. I did IT when I was in undergrad, which I didn&#x27;t really care for, but my first full-time job was as a software engineer at an media company. Also, not the best situation since the software team is really just a support group, which can be an after-thought for management. It wasn&#x27;t until I started my own company, after graduating business school, that I really appreciated the opportunities and freedom that programming offered me. Best time of my life (career-wise) were the first couple years of the business when I people were excited to use something I built and actually paid money for it.
rayraegahover 3 years ago
Back in 1993, I took an interest in Wolf 3D a hot new program on DOS which my dad described as “video game”. It was my first time looking at a PC and a video game. I went down that rabbit hole, majored in computer science and started working as a contractor for the military designed and built games used for training soldiers. It went down hill form there, joined EA worked on a few mobile titles and then quit the gaming industry for good.<p>Restarted as a system engineer, worked on backend systems and databases, then infrastructure management, and then on frontend. Took a break from software development and tried my hand at design. Lead product design at 3 startups all acquired within 2-3 years.<p>Went back to software engineering, something was off tried engineering management and it still did feel right. Took a engineering role on the growth team of a early stage Chinese startup and hacked a short video app’s growth and put it on the map.<p>Decided that I love solving problems; and engineering and psychology were my strong points. Wanted to learn how to manage (very large) business and dabble a bit in finance. Now I’m a product manager for a very large business.
sam_lowry_over 3 years ago
I studied to become a secondary school teacher, specialized in Romance languages.<p>One day, when I was teaching 7yo kids, my vocal cords failed me. I suddenly could not make a faintest sound with my mouth, and the condition persisted for a few hours.<p>Turns out, not everyone has a strong voice. It can be helped with some training, but I was told I should look for other career paths. I worked as Computational Linguist for a few years, then went into software development.
amiller35over 3 years ago
This is going to be a very valuable post&#x2F;discussion for me as I am looking to make a career switch into this field. Thanks for starting the discussion!
vpleover 3 years ago
&gt; How did you first get into programming?<p>In high school, my friend and I realized you could program TI-84 graphing calculators. We made really simple games (guess a number from 1-100, hangman, etc.). I didn&#x27;t even realize I was programming at the time.<p>I was also influenced by my dad (he was a software engineer, so I wanted to try it too). First formal education was an AP computer science course in 12th grade.<p>I was into math&#x2F;puzzles&#x2F;logical stuff at that time, so a lot of the initial concepts that you have to learn were both easier for me to pick up and more interesting (compared against someone who knows what they want to build, but views the intermediate knowledge&#x2F;skills as something they have to slog through).<p>&gt; What is your experience with university?<p>MIT, CS degree. Both the degree and the brand name helped with finding work.<p>In practice, it&#x27;s hard for me to identify explicit things I learned during school that have also been applicable and useful at work. I suspect that the most useful learnings weren&#x27;t part of any syllabus (e.g. fluency with a language).<p>&gt; How did you get your first paid work?<p>Internship, through which I received a full-time offer.<p>&gt; What do you do now and what do you love&#x2F;hate about your job?<p>Currently funemployed, but previously an engineering manager.<p>The fun part is when the team&#x27;s work comes together and produces a result.<p>The not fun part is when my line of thinking doesn&#x27;t line up with someone else&#x27;s. It is sometimes (often?) frustrating for me to debug why our approaches differ, then figure out how to make progress from there.
quadcoreover 3 years ago
My bro and I just bought our first PC, a cyrix 166+ and were playing doom when a friend of his shows up with a floppy and says: &quot;my 3d engine is lagging on my PC and I dont know why, can I try on yours?&quot;.<p>What he showed us was the most beautiful thing I have ever see in my life at the time. My jaw felt on the ground and never my life was the same after that.<p>The guy&#x27;s managed to software-render some sort of parabolic shape made of colored polygons in 13h 320x200 graphical mode. And it was fluid as hell. Nothing like Doom but just knowing <i>he</i> did that was enough for me. Later, he also made a comanche style voxel engine and something I&#x27;ve never seen since: real-time perspective-correct texture mapping on curved surfaces (we&#x27;re talking about a program that runs at 60Hz on a 133Mhz cpu). Without internet, without books. Just looked at games. The kid was a genius and would have made a terrific career was he in the US. As would I. I study all his C and asm code and a few years later was making a software rendered quake clone. Disclaimer: I had books and Internet.
stillbourneover 3 years ago
By accident really, I wanted to be a sysadmin actually. My uncle was the only successful person in our family, I wanted to be like him. I studied linux, worked my way from helpdesk to pc tech. I was waiting for someone on the systems team at my job to quit so I could apply for their spot but no one left. I had made a reputation for myself by scripting a lot of my work. Like if there was a common issue that I could resolve I&#x27;d write a script and then just type in the name of the computer and resolve the issue remotely. One of the devs for the company was aware of my skills and told to apply for his position when he left. That was 12 years ago.<p>Books and blogs? I paid for my own O&#x27;Reiley subscription which gave me unlimited access to the entire library of books they have available.<p>University? I skipped it. I&#x27;m a HS dropout, I have a GED I worked my way up from the bottom of the IT ladder I honestly think its better that way.<p>First job was with a bank taking helpdesk calls. Work my way up to PC tech. Moved to a university, PC Tech to Jr App Dev. Jr to Mid. Jumped ship to Charter as a Sr.
dipiertover 3 years ago
1993 - I was born in a dead boring town and was very shy. In this context my dad&#x27;s computer was utterly awesome.<p>2001 - After seeing my brother coding in Clipper 5 I wanted to do the same. I didn&#x27;t have manuals or Internet access (I lived in the 3rd world) so I reverse engineered my brother&#x27;s code to learn.<p>2003&#x2F;2004 - Fell in love with infosec. Low level code for crackers, network protocols, etc. Already had a basic internet connection and I was really happy learning.<p>2011 - Went to the uni to meet other people like me and finally master all these &quot;hackers stuff&quot; I loved. Uni was underwhelming and time-consuming but got a few good friends and started loving software development.<p>2016 - After years of being working on side projects and teaching at uni I finally got my first job as developer.<p>2021 - Not really happy spending my time in meetings and fire fighting production issues. Thinking about what I want to do next.
glonqover 3 years ago
I got into computers when my dad brought a Commodore Vic-20 home in 1982. Learned BASIC by typing in programs from Compute magazine. Then in high school they taught us Turbo Pascal on the PC.<p>I had no intentions of going to college, but my parents prompted it. That was a very smart idea. I did a two-year degree&#x2F;diploma with a co-op option. I finished with high grades and after graduation got a job with one of the places where I did co-op.<p>The majority of my career was focused on what we&#x27;d now call &quot;full stack&quot; development. I started near the bottom (embedded &amp; mobile) and moved into desktop, server, database, and cloud.<p>I thought that I would we a programmer forever, but kind of burned out in my mid-30&#x27;s. I got sick of framework fatigue -- having to re-learn half the stack every few years. So I switch to the dark side and became a development manager. Been doing that for almost 15 years now, but I still keep very close to development by participating in architecture and prototyping.
评论 #28461425 未加载
评论 #28463228 未加载
skydhashover 3 years ago
It was a long road. I was always interested in crafting things and a curious child. My father has many books and I got interested in the ones about tech and such. But what really helps me is being capable of understanding the theory without the practice. We didn’t have any computer or access to the internet, but I was able to retain a lot of informations from my reading.<p>The actual path started when they bought a laptop for my brother for the university. It came with Windows 2000 and we paid a guy to install XP on it. I quickly became friends with him and learn how to install Windows myself and all the things that it entails. So when one of my close friend had his own laptop, I was mostly the one tinkering with it as I was the “computer expert” in the neighborhood. Then I stumbled into Blender (I was interested in visual arts) then Python after I learnt about the Blender Game Engine. One of the forums that did help me was “Le site du zero”. I was not that good in english and it was one of the best French forums for beginner. I learned Python, then C with their programs. Another good forums was “Comment Ca Marche.net”. They had this program that was basically a wiki with an overview of all the major aspects of computer science.<p>I went to do an electronic engineering degree. But the major time was spent learning more about computers, programming languages, and software engineering. I volunteered for a few projects (one of them got me a personal laptop). But my first paying job was through a friend and with that I realized that I could do it part time to earn some good money. That’s when I signed on Upwork and since then, I’ve worked on several projects that earned me more money than I could have made locally.<p>The journey was more eventful than that, but I think that captures the gist of it. I’m still working as a freelancer. It can get a little bit lonely (I work from home) but I don’t mind as the country is not that stable (I live in Haiti).
jack_ryanover 3 years ago
First got into programming with FIRST Robotics in high school. Did some game stuff as well at the very beginning but never really stuck with it all.<p>Went to uni for Aeronautical Engineering. Switched to CS for all the wrong reasons. I&#x27;m in the camp that if you&#x27;re going to be doing what &quot;most&quot; software engineering is, you absolutely do not need a CS degree. You&#x27;d be better off with Electrical or Computer Engineering (if you&#x27;re gonna get a degree at all). They open up way more doors than they close by not being CS (dumb example but: EE&#x2F;CompE masters with a CS bachelors is a v tough thing to manage, much more doable the other way around).<p>First paid work was an internship I got through a career fair doing web-development which I absolutely hated.<p>I&#x27;m a vulnerability engineer currently. Not what I want to be doing long-term, but certainly a lot closer to it. Still making up for mistakes I made when I was 18 smh
drostover 3 years ago
When I was 14, Turbine Games released a patch to Asheron&#x27;s Call which broke Decal for a few months. Decal is&#x2F;was a framework for developing and running plugins for the game. These plugins could do anything in the game that the player could.<p>One such plugin at the time was ElTank. ElTank was primarily a combat macro. It would hunt and loot for you. But since decal broke, so did ElTank.<p>I still wanted something to play the game in this way for me. So I found another tool, ACTool. ACTool was a scripting environment which was normally able to hook into decal but it didn&#x27;t require it for some basic things.<p>I spend a days learning the ACTool language and managed to put together a VERY crude botting system that would be (poorly) navigate through one specific dungeon. Only one dungeon since I had to hard code my route. It would also manage my vitals -- health, stamina, and mana. Additionally, it was able to keep me buffed and log out if I died.<p>I managed to do all of that by pixel scraping. Based on the color of specific ranges of pixels I could do some pretty nifty things.<p>This was the first time ever programmed anything and it was SO hard and SO rewarding.<p>At this time, I didn&#x27;t even realize that Software Engineering was a career path. And if it was I didn&#x27;t think I would be able to make it through an engineering degree because of the math requirements.<p>Fast-forward to age 19. Engineering wasn&#x27;t even a consideration, neither was school. I joined the Navy instead.<p>My Navy rating had me doing some linux system administration stuff and I thought that was really cool. At the same time, a friend of mine wanted to do a Java class at the local Community College and didn&#x27;t wan&#x27;t to do it alone, so I did it with him. And it was so much fun that I decided that I was going to become a software engineer. SO when I finished the Navy I focused all of my energy towards college. When I graduated I was able to line up a job.
aynycover 3 years ago
Unlike many here, I never had a computer when I was young. I knew what it was, but had no interested in it. I enjoy sports, handcraft more than video games.<p>Went to college for EE&#x2F;ME program, found out I hated the program, but too many Math &amp; Science credits to do another degree from scratch. CS degree was a natural fit. Decades later, I&#x27;m still in the business.<p>Got my first job by applying to a bunch of companies at job fair.<p>I don&#x27;t love or hate my job, but I do enjoy it and appreciate it. It allows me to make a good living and support my family, etc.. Most of my work are creative, I generally balk against repetitive work (so no reports, or ops work for me).<p>I&#x27;m lucky in a sense that in my career, I usually get interesting work&#x2F;projects. If I had to deal with what some of my friends and colleagues deal with, I would seriously consider leaving the business.
ohdannyboyover 3 years ago
I started programming in C when I was 12. Computers had always interested me so this was a natural progression. This predated regular internet access (if I was lucky I could get on once a day) so I was entirely dependent on books, all of which are outdated now. What got me hooked was the precision of specifying instructions to computers, controlling what went on behind the scenes. This interest has always been my hook to the subject so it&#x27;s of little surprise I write firmware for small microcontrollers now.<p><pre><code> What is your experience with university? Did you get a degree, was it worth it, do you think it helped you find work, what did you love&#x2F;hate about uni? </code></pre> I went to UIUC for Computer Science and it definitely improved my prospects. My path through college was a bit weird so I was actually in my early 20s when I went in. I was one of the most experienced coders upon entry but that is a really small part of what you need to do well. Up until then my knowledge was entirely practical and I didn&#x27;t know any of the mathematics or algorithms behind what we do. Those topics along with a rigorous dive into subjects like computer architecture have proven extremely useful since leaving the university. Simply having a top engineering school on my resume has also opened a lot of doors.<p><pre><code> How did you get your first paid work (family &amp; friends, internship, freelance, full-time)? </code></pre> When I was 16 I got fired from a summer job at a fast food joint and decided it was time to start making money coding. I began offering services writing small PHP applications online, starting at $16&#x2F;hr and working my way up to $100&#x2F;hr by the time I stopped in college. It was a great way to make money when I was younger, but the work itself was really boring and the way I structured the business would not support anything more than side gigs. My first &quot;real&quot; programming job was given to me at age 19 by an older friend&#x2F;mentor who was the director of web development for a regional mortgage lender.<p><pre><code> What do you do now and what do you love&#x2F;hate about your job? </code></pre> I write embedded software for IoT power meters and love it -- I also really like that my company helps third world countries get reliable power for the first time. This company is pretty small and I have tended to like this environment more than giant corporations (I&#x27;ve worked for Intel and Qualcomm in the past). It wouldn&#x27;t surprise me if I end up back at a big company at some point since they pay more, but I really like where I am at the moment.
wazndupover 3 years ago
&gt; How did you first get into programming?<p>Late 90&#x27;s, family bought a computer, spend a lot of time on it, mostly playing video game, making video game&#x2F;3d stuff &amp; web site. Since running website required linux, switched to linux around ~2000, begining the hosting path, compiled a lot of kernels (drivers stuff were no jokes back then), coding in C, java, php, bash etc.<p>&gt; Were any books, blogs, forums, or people particularly helpful for your growth? What is it about coding that got you hooked?<p>A lot of books &amp; forums, lugs, irc communities. But not one thing in particular.<p>&gt; What is your experience with university? Did you get a degree, was it worth it, do you think it helped you find work, what did you love&#x2F;hate about uni?<p>Got a master degree in CS. The studies were very useful, shaped very well the way i think and i keep in touch, work with a lot of people i met there. The paper in itself is useless. The job market was already starved for dev, so if you knew how to boot a computer and were motivated to learn, you would get a job offer signed one year before graduation.<p>&gt; How did you get your first paid work (family &amp; friends, internship, freelance, full-time)?<p>summer job coding in PHP&#x2F;running linux boxes for a guy i met on IRC.<p>&gt; What do you do now and what do you love&#x2F;hate about your job?<p>Senior dev in startups. i find it really amazing the improvement of capabilities and the cost of small MCU; i started working in embedded stuff with 100mhz&#x2F;64Mo of memory for $200 and now you can buy 10x that for $4, it&#x27;s crazy. i love the improvement of the ecosystem, better langage, better tooling, more ressources, the cloud etc. The javascript part could be a lot better, these people seems to reinvent the wheel every two years.. Linux on desktop&#x2F;gnome is crap. And i hate that LTE modem or broadcom wifi&#x2F;ble firmwares still aren&#x27;t reliable in 2021; it&#x27;s a shame that it needs 10 different watchdogs to have a device running 1 years without human intervention.
tmalyover 3 years ago
I started out as a kid in the early 80s doing BASIC coding on computers that had to be booted from 5.25&quot; floppy drives. We made simple maze games.<p>When I was 11 I use to spend a lot of time in Radio Shack playing with electronics. When I was in high school I would program games on the TI calculators.<p>I think my experience in the early 80s was what stuck with me. I finished a degree in Computer Engineering, and I work in FinTech today. I still love learning new things and new programming languages.<p>Getting an early introduction to coding had such a big impact on my life. I decided to give back.<p>I have been volunteering to teach coding and robotics at my daughter&#x27;s school. The students really enjoy enjoy learning about these topics.
zeroegoover 3 years ago
I just recently accepted my first Software Development position. Copy pasting from another post but this is basically how I did it:<p>2015 - Graduated with BA in History.<p>2018 - Started self teaching how to program, got an office job and automated everything I could.<p>2019 - Took four semesters of night classes to meet the math per-requisites for my local CS program.<p>2020 - Took a butt load of CS classes while working.<p>2021 - Finally convinced my company to let me help the software team (part-time).<p>July 2021 - Partner gets job out of state, apply for dev jobs in that city even though I hadn&#x27;t finished my degree.<p>August 2021 - After a long interview process, accepted an offer for my very first software development job!<p>Books that really helped: The Players Guide to C# by RB Whitaker, Learn to Program by Chris Pine
the_jeremyover 3 years ago
My first program was a &quot;choose your own adventure&quot; text game on the TI-83 in middle school.<p>I majored in mechanical engineering and got an internship writing Bash scripts to test hard drives by virtue of having a great GPA. It was way more fun than any of my MechE classes, so I went to CS classes with some friends who were getting CS minors (I wasn&#x27;t allowed to actually take the courses because of pre-reqs) and lucked into a SWE job.<p>Right now I&#x27;m about half SRE and half SWE, which I enjoy. I dislike the amount of bureaucracy and the never ending dependency updates - we currently have a great way to alert on security vulnerabilities in dependencies, but no great way to automatically update.
kuroguroover 3 years ago
&gt; How did you first get into programming?<p>Asked my informatics teacher in middle school on how to get started and he was happy to teach me the basics of C :)<p>&gt; What is your experience with university?<p>Got my Bachelor&#x27;s after a long break. Didn&#x27;t have to pay for it as in a lot of EU, but honestly don&#x27;t feel like I learned much and most employers don&#x27;t seem to care if I have it or not as long as the job gets done.<p>&gt; How did you get your first paid work?<p>Got my first projects and employment trough family friends.<p>&gt; What do you do now and what do you love&#x2F;hate about your job?<p>Programmer. I got into computers because I didn&#x27;t like dealing with people. But having a job means _a lot_ of dealing with people. Keep burning out every now and then :&#x2F;
staticelfover 3 years ago
&gt; How did you first get into programming? Were any books, blogs, forums, or people particularly helpful for your growth? What is it about coding that got you hooked?<p>My interest for computers in general started with modding and cheating in Diablo 2. I learned about how programs worked and how to change local files in order to get other items and change the game in various ways.<p>I remember the site mewgood.net (I think it was, which was extremely helpful at the time).<p>&gt; What is your experience with university? Did you get a degree, was it worth it, do you think it helped you find work, what did you love&#x2F;hate about uni?<p>Went to uni but never finished to get a degree. It was fun, so in that sense it was worth it but the education itself could have come from a much shorter work education that we have in the country I live in.<p>I think today going to university is probably still very fun for the students (except covid restrictions) but it&#x27;s not really worth it education wise. You can get a better and shorter education with less fluff.<p>&gt; How did you get your first paid work (family &amp; friends, internship, freelance, full-time)?<p>I got a part time job at the same time as I got accepted at a company to do my Bachelors degree (which I never completed).<p>&gt; What do you do now and what do you love&#x2F;hate about your job?<p>I work as a developer. I love the freedom that I get. I can work remotely, leave the job earlier or come in later. It is fun and interestin but the thin I hate is that it sometimes can feel like a jail. I am bound to my computer with too little human interaction.<p>I think part of that is because I work remote and live on the country side. But I have taken action to involve myself in meeting new people on my spare time. Covid was thouh for my mental health tho. Felt very lonely.<p>Also even if I walk a lot, it feels like sitting still like a shrimp in front of a computer is not very healthy. I have been gettin much more issues with reflux that I don&#x27;t think I would&#x27;ve had if I had a job where I moved around all the time.
rovr138over 3 years ago
Through Linux initially.<p>In my early teens, I started tinkering with Slackware and then Debian. I eventually started following tutorials to add cron jobs to do things I needed. I started adding some logic around them.<p>I kept at it. Kept getting familiar with command line tools, bash scripting, logic, and so on.<p>I was going to go to Uni for Computer Engineering but changed to Computer Science because the code and logic part appealed more to me.<p>I went to University for a few years and I was freelancing. There was a strike at the university and other projects fell in my lap. I was making money in my field, so I just kept doing that.
derivagralover 3 years ago
Started playing shareware games in late elementary school&#x2F;highschool (win 2k&#x2F;95&#x2F;98 era). Kazaa and ilk were fun, though I had to debug a couple viruses with windows&#x2F;AOL support since my grandparents weren&#x27;t very technical.<p>That eventually led to HTML multiplayer browser games (ogame and similar were popular in high school.) Once I figured out what F12 and greasemonkey could do, I had a lot of fun making shortcuts, auto-assignments, etc. I didn&#x27;t love Flash games nearly as much because I didn&#x27;t know how to interact with them. I had a couple geocities sites around this time, but had no idea what a backend or database was despite really wanting a visitor counter.<p>Bachelors in college taught me mostly backend stuff. That led to a lot of data scraping for various things, some of which went further than others. The most intense scraping was for a major collectible site that eventually CSS-sprited all of their text; cracking that was fun. This particular project was for a hobby of mine so my friends and network could get some price advantage on large moves by the major vendors; I was in&#x2F;just out of college around this time, so the money part was important to me at the time. This data passion later shifted into personal financial tooling after college for my own unmet needs around investment.<p>I skipped the masters+ stuff and was happy to go right into industry. Work went from internship-&gt;job in backend (java) to ops (db admin of a mongo cluster on misc unix machines) to my current fullstack python&#x2F;javascript set of roles. I mostly skipped FAANG stuff since I didn&#x27;t want to stop hacking on my personal projects, but many of my college friends have had great success in those companies.<p>Now: Recently switched out of one of the large tier2 micromobility operators into a different vertical. Getting back into &quot;hacker&quot; mode after a multi-year hiatus for personal stuff.<p>Love: doing things, impact, perf problems, interviewing, stitching together data sources (Quandl&#x2F;crypto, collectibles, games, economy data), etc. Advising an investor on whether they should care about this new &quot;blockchain&quot; thing for their financial services startup was pretty fun too. I love being able to spin up small MVPs quickly with tools like React and Mongo.
hihungryimdadover 3 years ago
I got in to programming because of my other hobbies. I remember playing an NFL game on the Dreamcast. It wouldn&#x27;t keep statistics from the past years, only the current year. I remember researching and learning about the LAMP stack and made my own statistics tracker for the game.<p>I&#x27;ve thought about volunteering in my local community with kids who are interested in computers. I think finding out about their other hobbies and finding a way to tie in programming with them would be a great way to get them interested and stay motivated.
kweinert42over 3 years ago
I was in the Army and ended up in a research facility. The first computer I programmed on we had to assemble first and we entered the program by flipping switches on the front panel. After a while we graduated to using a Model 33 teletype and a paper tape reader and we only had to enter the boot code via the switches. I found that I really liked the challenge of figuring out how to make the machine do what I wanted and continued from there. This was in 1976.
elohssaover 3 years ago
I was into computers as a kid, but in the days before the internet it was harder to really learn how they worked. I ended up doing software installs for a corp.<p>I had to cover a couple weeks for a coworker on vacation. His job was so tedious I wrote some shell scripts to do as much of it as I could. When he came back I showed him the scripts. Turns out they had a dev team working on that automation. They moved me over to that team and thought me to program so I could work on the project.<p>Two decades later, I&#x27;m still grateful.
NoahKAndrewsover 3 years ago
For me, it was through the FIRST Tech Challenge (FTC) robotics competition in high school. I happen to know that London has an active FTC ecosystem, so that might be worth mentioning.
zestsover 3 years ago
I was taking AP classes in highschool for fun just to take as many as possible. That included AP Computer Science.<p>I felt behind at the beginning so worked extra hard to catch up. The teacher let us work at our own pace and before I knew it I was several chapters ahead of the rest of the class. Then I spent class time writing naive math programs to do stuff like numerically compute integrals. When I discovered BigInteger I was so excited.<p>I think my future career was determined then but I did not realize it at the time.
k__over 3 years ago
Practical use cases before theory.<p>I studied computer science and media, but to be honest, it was only a help AFTER I worked in my first dev job for a while.<p>I&#x27;m more of an inductive learner.<p>Also, I was neither good at math, nor a quick learner. Currently I&#x27;m helping my girlfriend with her studies and I have the feeling, learning programming languages and using them for over ten years made understanding math syntax much easier for me.<p>I think, if I programmed for a few years before studing CS, I&#x27;d been much more successful.
malinensover 3 years ago
I started programming WAP sites with site builders on cheap j2me mobile phone because I did not have computer. I picked up WML, then some HTML, then little bit of JS ans then I started using PHP scripts. I started going to library so I could programm stuff on their computers faster. I am still a PHP developer even after professionally developing in Python, Java and other languages and it is still my favorite programming language
gtaylorover 3 years ago
Turned my MUD addiction into a MUD development addiction. Learned all kinds of stuff (Linux, SQL, a little PHP) while building those games. Eventually went to school, didn&#x27;t do well in Comp Sci, changed majors to an unrelated degree. Graduated and found a software eng position in the same field as my degree (print) and got on the tech path after that (tech startups, Reddit, Twitter).
Ocergeover 3 years ago
Got in to university as a History major, decided I needed a job in the future that actually makes money, and transferred to the CS department. 10+ years later, I&#x27;m still a SWE at a FAANG. It&#x27;s definitely not my passion, but it pays the bills and has lead to a low-stress life with great work-life balance. I&#x27;d do it again in a heartbeat.
fossuserover 3 years ago
I wrote this a while ago which got some attention on HN at the time: <a href="https:&#x2F;&#x2F;zalberico.com&#x2F;essay&#x2F;2020&#x2F;04&#x2F;19&#x2F;how-to-become-a-hacker.html" rel="nofollow">https:&#x2F;&#x2F;zalberico.com&#x2F;essay&#x2F;2020&#x2F;04&#x2F;19&#x2F;how-to-become-a-hacke...</a><p>It gives some context to what got me interested and what I found helpful.
DrinkWaterover 3 years ago
As ridiculous as it sounds: by pure accident. The guy sitting next to me in class told me his brother has a software&#x2F;IT company and they are looking for people. I applied because i was literally lost about what to do after i finish school. I got the job (apprenticeship) and realized this is something i like and i stayed in this field ever since.
trypietryover 3 years ago
I started as a hobby making fansites for my favorite musicians (join my webring!) as well as vanity sites for myself and my friends in middle and high school. Twenty years later, I’m still basically making vanity sites, but for CEOs and small businesses. I can’t believe they pay me to have this much fun moving boxes around on a screen.
linuxstoneyover 3 years ago
Learn programming from YouTube or other good knowledge source, before starts choose your favorite one programming language,,, <a href="https:&#x2F;&#x2F;www.itsfoss.net&#x2F;most-popular-programming-languages-2021&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.itsfoss.net&#x2F;most-popular-programming-languages-2...</a>
multifasciatusover 3 years ago
Started in high school with learning Python on Codecademy then solving problems on Project Euler. Went to uni for a computer science degree, which was absolutely worth it to me. During uni I got an internship through a on campus career fair. Currently I write Go and Python for a multi-cloud platform startup.
shepherdjerredover 3 years ago
I started programming in about 7th grade. A website&#x2F;game I enjoyed was Neopets. Neopets allowed you to create grounds called guilds which had HTML pages you could customize, so I learned HTML.<p>Later on I started playing Minecraft. I was interested in running a public server and creating a community, so I learned the basics of system administration (ssh, ftp, bash, linux, website domains, etc.). This was extremely helpful, practical knowledge that gave me many advantages over my peers in school.<p>In high school my server grew more and more. I learned about virtualization vs bare metal servers. I set up a website and forum using off-the-shelf software (XenForo, Apache, MySQL). I did small front end programming tasks in HTML, CSS, and JavaScript. When I needed to learn more I did just that.<p>Aside from the technical aspects I also learned things like web design, game design, Photoshop, the importance of backups, and managing a community.<p>At some point I wanted to write my own mods for the server. Java was intimidating, so I used Skript which was a scripting language that could perform actions in the game. This worked for a while, but I quickly outgrew it and sought to learn Java.<p>I wrote several mods for the game and published a few with success. I learned more and more Java. It was an excellent time where I learned the basics of programming and programming languages. I learned design patterns like Singletons and connection pooling. I learned how to use event based APIs to write handlers, how to use file system apis, how to keep data in memory &amp; persist to disk. I learned how to use git&#x2F;GitHub to share my work and version it. I kept on running. A server until I entered college as a computer science student. Around my freshman&#x2F;sophomore year I started to lose interest, so I shut it down.<p>I college I found classes to be extremely easy, so I didn’t spend much time on them. I spent time on projects and solving problems I had. I wrote many different web apps, created a smart thermostat, and wrote better interfaces for my schools atrocious websites.<p>I had an internship my freshman summer at a packaging plant. I did data entry and wrote small scripts&#x2F;programs. My sophomore summer I studied approach. Junior year I applied for an internship at AWS on a whim, and much to my surprise I got and interview and eventually an offer. I interned at AWS that summer and received a full time offer. I worked at AWS after I graduated and stayed for about two years. I started my current job at RStudio yesterday, so I can’t give much info about that yet :)
评论 #28512924 未加载
philipovover 3 years ago
When I was 14 I played MUDs. The MUD I played only allowed one account per user. I made two accounts and got banned. It was that day I decided to learn C and make my own MUD that allowed more than one account per user.
escandaover 3 years ago
Spain. I I dropped out of University the first year. I made less money than people with university degrees. If you can, totally worthy.
mikewarotover 3 years ago
I&#x27;m old (57), so this happened back in the 1980s, and isn&#x27;t very relevant to current market conditions.<p>I started out in amateur radio, and made connections through a friend with a Man who had a small computer repair shop. I started fixing things while still in high school. One day he got an EPROM programmer, and there was a program that talked to it written in Turbo Pascal. The next thing you know, I was programming in Pascal, having already done things in BASIC.<p>I went to College, but I picked poorly, and couldn&#x27;t afford it, coupled with bad time management, ended up dropping out. I eventually got a job as a programmer. I wrote BASIC code that talked to Industrial Programmable Controllers (PLCs).<p>For about a decade I ended up writing, then supporting in the field, a system that used portable computers to record inspections of fire protection equipment. I loved that job, because I had written the software, and could definitely fix ANY issue that arose.<p>It was during this time that I wrote a cooperative multitasking library for Turbo Pascal 5, under MS-DOS.<p>After that I went to work for a small firm that repaired Industrial electronics, and ran an Internet Service. I did both of those for a few years.<p>It was about this point that I wrote Forth&#x2F;2 a native code Forth for OS&#x2F;2, mostly because I was told you couldn&#x27;t program OS&#x2F;2 in assembler.<p>Eventually I ended up as a system administrator for a trade show marketing firm for 15 years. I fell into a trap, there was less and less work over time, and they didn&#x27;t want to risk the running systems to phase in improvements I had written in my free time. Don&#x27;t repeat my mistake... if you find yourself with more than half of your time free, it&#x27;s time to move jobs.<p>Next I took a job making gears, it paid less, but was interesting.<p>I have a friend that I&#x27;ve been helping do repairs... it was interesting helping him get his bucket list item working... he always wanted an Atomic Clock, and by the end, we had repaired a few of them.<p>Then Covid hit, and now my programming skills are old, and I&#x27;ve been sick for a year.<p>Update to answer questions: Love&#x2F;Hate - I love that you can build <i>anything</i> you want, provided sufficient time and effort. It used to be that everyone built their own tools for navigating the file system, etc. and had fun showing them off to friends. Shareware was an amazing way to learn and share programming knowledge, and even make a few bucks.<p>I hate the fashion aspect that seems to have swallowed the industry. It used to be that knowing how to program was the key, you could learn the details of a language on the job, and usually only took a few days&#x2F;weeks to get up to speed. Now everyone wants 5 years experience on the 6 year old platform.
评论 #28463535 未加载
sys_64738over 3 years ago
Got a degree in Computing Science. That is the golden key to entry level software development.
fterhover 3 years ago
I was a law student who got sick of legal practice, and found my passion for programming through luck. I actually wrote a reflective blog piece on my journey recently if anyone is interested - <a href="https:&#x2F;&#x2F;medium.com&#x2F;@fabianterh&#x2F;celebrating-1-year-as-a-software-engineer-e21148e307c0" rel="nofollow">https:&#x2F;&#x2F;medium.com&#x2F;@fabianterh&#x2F;celebrating-1-year-as-a-softw...</a><p>(It&#x27;s not paywalled and I don&#x27;t earn a single cent, so I hope this isn&#x27;t against the rules)
valbacaover 3 years ago
&gt; How did you first get into programming? Were any books, blogs, forums, or people particularly helpful for your growth? What is it about coding that got you hooked?<p>First, first started with a web-page summer class in middle-school. We learned HTML and a tiny bit of CSS&#x2F;JS, all handwritten in Notepad and copied and pasted into Geocities (c. 2002)<p>I was strong in math and science at a young age and wanted to be an astronaut, but wearing glasses, I decided being an engineer (of some sort) would be better.<p>In High School, I went to an engineering Magnet school, so I got to play with Lego Mindstorm and other robotics. We built a solid-state rocket that broke the sound barrier and I helped program the beacon used to help find it when it came down.<p>Between high school and college, I picked up &quot;C++ for Dummies&quot; and while I didn&#x27;t learn much, it at least introduced some concepts (like pointers and classes) and syntax.<p>In college, the books I consider the most influential were: &quot;The Pragmatic Programmer&quot; (that&#x27;s a career-defining book) and my favorite languages were C (&quot;The C Programming Language&quot; by K&amp;R) and Ruby (&quot;The Ruby Programming Language&quot; from O&#x27;Reilly).<p>For today&#x27;s programers, I&#x27;d suggest Python (it&#x27;s ubiquitous, and perfect for learning and building fundamentals) and&#x2F;or JavaScript (also ubiquitous for working with the web).<p>&gt; What is your experience with university? Did you get a degree, was it worth it, do you think it helped you find work, what did you love&#x2F;hate about uni?<p>I went to a state college (Texas Tech University) because it&#x27;s what my family could afford. I got into more prestigious colleges (MIT, NYU) but would&#x27;ve had to take on massive college debt as I didn&#x27;t qualify for much financial aid nor many scholarships. (Not rich enough or genius enough nor poor nor dumb). I still decided to make the best of my situation and replicate the MIT EE&#x2F;CS program by dual-majoring in Electrical Engineering &amp; Computer Science.<p>I&#x27;m really glad I did EE&#x2F;CS dual-major b&#x2F;c it gave me a full spectrum of understanding: from electrons-&gt;fields-&gt;gates-&gt;circuits-&gt;low-level architecture-&gt;operating systems-&gt; C -&gt; C++ -&gt; Java -&gt; Python -&gt; Lisp<p>Also at the time, CS wasn&#x27;t as solid of a career path after the dot-com bubble. It was honestly nice to have an EE degree as a &quot;backup&quot; and I also did most of my programming for my EE lab work.<p>Given that I made the frugal decision to stay in-state, take on minimal loans by living at home, and got two degrees out of 5-years, and the college really helped me find my first job through career fairs (even in the tail-end of a recession), I would definitely say that a degree was worth it. I was also the first in my family to ever graduate from college, which was&#x2F;is a major source of pride for me and my family. I also met my fiancé-now-wife in college and other life-long friends. I worked through college at the college IT dept as well, in addition to my 15-18hr course load. This got me tangentially-relevant work experience. College and work taught me how to study and work efficiently and effectively.<p>There&#x27;s definitely a larger no-degree movement and I would never say you need a degree; there&#x27;s also a lot a degree entails that is nonsense.<p>My EE &amp; CS classes were worthwhile and taught me the most fundamental concepts of programming: language (as in language design, compilers, interpreters), functions, recursion, pointers. You really understand &quot;the stack&quot; when you build C-function calls in assembly. You understand compiler errors better when you&#x27;ve written one. Again, not saying you <i>need</i> to go to university to learn these things; just sharing that these parts were what&#x27;s valuable.<p>&gt; How did you get your first paid work (family &amp; friends, internship, freelance, full-time)?<p>Career fair and interviewing pretty much my whole last year at uni. I already had an internship, which also greatly helped.<p>&gt; What do you do now and what do you love&#x2F;hate about your job?<p>I&#x27;m a senior software engineer. I love the coding and the scale and scope at which my work applies. I can launch features to literally millions of people and help generate hundreds of millions of dollars in donations<i>. I get to learn new concepts and apply them.<p>I love that I pretty much set my hours, I work comfortably indoors. I work remotely, so my gym, my dog, and my wife are just a room or two away. I don&#x27;t like office nonsense (arguing over fridge space or who filled the coffee or what did you do this weekend), so remote is fantastic. And I </i>love* the pay.<p>I hate the inefficiencies and bad politics, but that&#x27;s just part of white-collar work. When people would rather feel right or appear smart than <i>be</i> right or smart. When metrics are given priority over substance; when how something is measured is prioritized over what the measurement was meant to represent (an analogy would be chasing a higher credit score while you&#x27;re in deep debt to your family or losing weight by cutting off a limb). Long-term results are sacrificed for short-term gains.<p>I&#x27;m happy to share more.<p>* My opinions are my own and not my employers. I don&#x27;t speak for them nor they for me.
ISV_Damoclesover 3 years ago
M 37<p>&gt; How did you first get into programming? Were any books, blogs, forums, or people particularly helpful for your growth? What is it about coding that got you hooked?<p>My family got our first computer when I was in middle school. A Pentium 90MHz with 14MB of RAM, a 200MB hard drive, SoundBlaster 16 sound card, 5.25&quot; and 3.5&quot; floppy drives, 4x CD-ROM drive, running MS-DOS 6.22 and Window for Workgroups 3.11. There was no consumer-facing internet at that time. Just figuring out how to play a game with a joystick required learning about CPU interrupts and DMA channels for the sound card (and telling games which to use for what), serial ports for the joystick, and adjusting memory allocation in `config.sys` and `autoexec.bat` for DOS because none of those things were done automatically back then and different games had different needs, particularly with the memory allocation, so making special 3.5&quot; floppy boot disks was also common.<p>All of this required learning how to navigate on the DOS command line and editing text files by keyboard only, so it was a pretty high activation energy to play games on the computer instead of my Game Boy, but the difference in the experience drove me to get there.<p>One day I randomly stumbled upon `qbasic` and the `gorillas.bas` file, a fully working game of two giant gorillas standing on top of skyscrapers throwing exploding bananas at each other, that I could edit and run. It had a few global variables at the top with explanations of what they were for. I recall laughing at changing the gravity to 100x Earth&#x27;s and watching the CPU player try to throw the bananas and having them drop instantly and explode itself.<p>From there I tried to make changes to the rest of the code below the commented constants but that usually ended in disaster. I eventually figured out the parts of the code that were used to draw rectangles, lines, and circles, as well as the random number generator, and I ripped them out into separate files and started making &quot;screensavers&quot; that would spam pseudo-random garbage onto the screen in different patterns as fast as the CPU could do it (because I just put the logic inside of an infinite loop, though I think I also had a space bar press check at some point so I wouldn&#x27;t have to restart the computer to exit).<p>For as much shit BASIC gets (rightly, for the most part), that immediate feedback and ease of development let me experiment quickly and experience the almost magical ability of computers to turn your imagination into reality if you can make &quot;the right incantation.&quot;<p>I knew that BASIC was too limited to do what the games I was playing could do, and I would need to learn a language like C to get to that point. I was also drawn to seemingly simple things like Microsoft Paint (and later Corel DRAW!) and the simple Sound Recorder application in Windows, and I could not comprehend how these tools were made.<p>Flipping through some books on Windows programming and OLE and etc in a local bookstore discouraged me because I didn&#x27;t have the CS background and technical jargon knowledge to understand most of what I was reading. I projected from the simplicity of DOS to what I was seeing with Windows and assumed in a decade it would be even further along and completely beyond my comprehension, so I didn&#x27;t push much harder than that in middle school.<p>In the summer between middle school and high school, my uncle gave us a copy of Visual Studio 6.0, which included VisualBASIC 6.0, which let me make desktop applications that looked like the ones I thought were impossible for me, which got me back into software.<p>My (public) high school was very forward thinking at the time, and offered electives in C&#x2F;C++ (it was C but with the silly `cout &lt;&lt; &quot;Hello, World!&quot; &lt;&lt; endl;` stuff from C++) and web development. The C course helped me finally figure out what pointers were, which helped demystify a lot of stuff. There was also a brilliant and humble kid in my class who was one or two years older than me that was working for a local ISP after school (in 1999) that basically knew all of this inside and out. It left a strong impression on me -- that I had taken far too long to figure these things out and that while I found it very interesting, I probably shouldn&#x27;t try and &quot;compete&quot; directly as a developer, and should instead choose a field where programming knowledge would give me a boost.<p>The web class was a combination of learning HTML and Frontpage, but the teacher was very nice and didn&#x27;t discourage me when I started experimenting with this JavaScript I found while poking around, and I made some sites that would make the text appear a letter at a time in a typewriter font as if it was being typed by someone, I made a Single-Page App in 2000 by putting all of the contents of the site into JS strings and having menu navigation presses replace the `innerHTML` property, etc.<p>That also made me aware of software development outside of what Microsoft provided to consumers, and I was getting fed up with the Visual C++ books I found in the book store that didn&#x27;t explain anything but walked you through step by step on how to do things in &quot;Wizards.&quot;<p>Near the end of high school or the beginning of college I found Red Hat Linux and I enjoyed playing with that alternate operating system that I could (theoretically) change any part of it that I wanted to. And I ran across a plain text C programming tutorial centered on GCC and Make that explained <i>exactly</i> what was going on and how a binary was made and how it worked with the operating system, and that&#x27;s when I was hooked on Linux.<p>Even after that, I was still pursuing a different field from actual CS. I started with Physics and then switched to Electrical Engineering, even getting a Master&#x27;s there. Along the way I also learned Perl and CGI scripts for web hosts and used that plus my Linux knowledge to help manage my Research Lab&#x27;s 2U servers, and write helper tools for parsing all of the measurement data we were making.<p>I had actually entered grad school in 2007 because I felt like the economy was shaky and I had lucked out, avoiding the 2008 crash where I probably would have been fired during those layoffs. I stayed in grad school until 2012 pursuing a PhD, but a combination of getting married and having a kid, my wife <i>also</i> being in EE (and so our economic eggs being in one basket), and a part-time job at the university working on a CRUD web app for gathering, storing, and approving&#x2F;denying animal research proposals pushed me to go for programming full time.<p>Since I had mostly happy experiences with Javascript (pre-jquery), I decided to learn Node.js in my spare time while looking for a job, and I started writing some OSS libraries for Node. Most companies I applied to rejected me immediately from &quot;lack of experience&quot; since I didn&#x27;t have a CS degree, others would interview me but I was rejected by all except 2. One was a super tiny startup run by a husband and wife where the husband gave me a creepy vibe that I rejected, and the other was an early-ish startup that had traction and high growth, but was also having technical issues and had built a core piece of their technology in Node.js for some reason: Uber.<p>That was the wildest job I had ever held. The highest highs and lowest lows of my career were all there. I gained a <i>lot</i> of operational experience and architectural knowledge there, helped scale the Node.js-based dispatching system, part of the team that did the second version of Surge pricing, part of the team that built UberPOOL in 3 weeks, built a &quot;hot rod&quot; stream processing system from scratch in Java (the various Apache projects weren&#x27;t reliable enough, not even Kafka) for the third version of surge, and helped build UberEATS&#x27; first and second versions of surge.<p>The technical side was great, but I was emotionally drained at that point and didn&#x27;t like what I was seeing from the top, so I left to join another startup that had many technical similarities to Uber but in a different market, but it sold itself to a competitor two years later, so I left.<p>That&#x27;s when I co-founded a startup with a friend and colleague from Uber since then, which gets me to the present day. Not going to advertise the startup, we&#x27;re still too early-stage to have customers, but I&#x27;ve learned a lot about compilers, virtual machines, and type theory in this startup, things that high school me had assumed were beyond my abilities, and I really enjoy what I&#x27;m doing and the people I&#x27;m working with.<p>The uncertainty of whether we will be able to reach product-market fit and have the startup actually take off is what I dislike the most about the startup, but it&#x27;s up to me and the rest of my team to figure this out. That uncertainty is the price that has to be paid for the freedom of choosing <i>exactly</i> what to work on, and I think I&#x27;m finally confident-enough in myself to be ready to pay that price.
troutwineover 3 years ago
I started out as a mathematician, interested specifically in formal logic. Got into a well-regarded undergrad program on track to to a PhD. My particular area of interest was and remains logical systems that _appear_ correct but ultimately turn out to be flawed. What is the nature of that flaw? How did the nature of Proof factor into the flaw? How was the flaw ultimately detected and what was its consequence?<p>Anyhow, I&#x27;m a pretty good mathematician and that doesn&#x27;t really cut it these days. I saw pretty clearly some of my co-students were _much better_ in the field than I was and knew from the experience of older friends that even the very best struggle on in a life of low-pay TA jobs, shuffling from school to school. My undergrad work in math had gotten me interested in proof assistants and I was increasingly interested in how the proof machinery itself work. Aside from some assembly programming on an Apple IIe that was more just copy and paste I had never really been interested in computers as a mechanism but that changed very much in my early 20s.<p>So, I bailed on math and bailed on my fancy private school and went to a well-funded state school doing neat work on the &quot;multi-core crisis&quot; and had a lot of Haskell luminaries kicking around. I gradually came to learn I really enjoyed and was pretty good at systems programming, especially the tricky bits that deal with machine non-determinism but must obey stated semantics. For me university was a truly excellent experience, coming at the field cold. I learned that I really enjoy the mathy side of computer science and that computers as machines are delightfully flawed logic systems. I was also exposed to the humanities in a way I might not otherwise have been in undergrad. Without that appreciation for literature and history I would have been poorer in my person and my later work would have been naive.<p>My first gig was in undergrad while I was at school and I was not at all qualified for it, looking back. My first actual I-am-good-at-this gig was at AdRoll working on the real-time bidding engine. Very interesting work, even if I don&#x27;t love, looking back, on what that work spawned. Understanding failure in software at high-scale led me into statistical reasoning in a way my logic background never did, likewise into the work of Joe Armstrong and Jim Gray. I was also forced to understand the machine properly from the point of view of building machine sympathetic software. From the AdRoll experience I got the two dipoles of my career: systems programming and fault-tolerance.<p>Now I work at Datadog on the Vector project, specifically focused on improving Vector&#x27;s internals to make it machine sympathetic _and_ easy to work on without specialist knowledge. I love that I&#x27;m able to do practical research into the optimization of a serious product again -- haven&#x27;t really had that since AdRoll and the field has moved on quite a bit, hello eBPF -- and push on the boundary some of what it&#x27;s possible to do with a handful of machines. With regard to what I hate about my present job nothing, but about the _career_ I do really dislike how much we&#x27;ve managed to reward narrow-focus ignorance. That is, a goodly number of software folks have a lot of success just focusing on computery bits and not much else, fine, but the culture of software sort of sees the world through that lens solely. At its best you get a kind of narrow utopianism -- if only our computers were good enough something something perfection -- and at its worst you have folks of authoritarian bents with cash like you wouldn&#x27;t believe. I wish the field valued monoculture less and broadness of education a little more.
GrantZvolskyover 3 years ago
&gt; How did you first get into programming?<p>I stumbled upon a book titled &#x27;The magic and mysteries of the command line&#x27; when I was ~13 and I&#x27;ve been hooked ever since.<p>&gt; Were any books, blogs, forums, or people particularly helpful for your growth?<p>See some of my earliest posts, they are hilarious[1][2][3][4]. In each case kind strangers provided valuable insight, for which I am very grateful.<p>[1]: <i>CMD pls help</i><p>[2]: <i>Is in this code something wrong, my CPU is that bad or its normal this code</i><p>[3]: <i>Hello, I have tryed to code simple aplication for calculation of linear equation (like x + 1 = 5) but i ended cca here:[...] but dont know, how to finish it and above all i think it isnt coded werry good. Please, can you help me with it?</i><p>[4]: <i>Hi, I have disassembled virus (which btw stolen my WoW password few years ago) using W32DASM to get it&#x27;s includes, and it contains only one function (KERNEL32.ExitProcess). I&#x27;m sure that isn&#x27;t the only thing the program does. Is there any way to get real list of functions of the program?</i><p>I also had a great friend whom I met while playing World of Warcraft. He was about 15 years older than me and we exchanged &gt;100k messages about programming. When I mention this people assume some ill intentions but I wanted to meet him in person and he wasn&#x27;t interested, and we&#x27;re still in touch. What a kind man. He even wrote a PHP tutorial just for me. There were a few more experienced developers to whom I reached out who had a significant impact in the early days.<p>I can&#x27;t think of any books other than the aforementioned magic and mysteries that had a profound impact. The source code of major projects is the best resource. Learning Scala had a positive impact, even though I don&#x27;t use it these days, because it enriched my vocabulary of programming paradigms. It also helped to complete all the standard theoretical CS courses at university which is also more about learning to think than being able to solve some concrete problem. Anyone can take these courses for free thanks to MIT OpenCourseWare[5]. MIT OCW is the most valuable resource other than source code.<p>&gt; What is it about coding that got you hooked?<p>It was during a rather unfortunate period for my family and I was certainly trying to escape reality. It was an escape, an alternative reality that was much more interesting than the real world. Part of it is also my curiosity about how things work which I probably take from my father who is an extraordinary craftsman and a self-taught expert in many areas.<p>[1]: <a href="http:&#x2F;&#x2F;programujte.com&#x2F;forum&#x2F;vlakno&#x2F;5618-cmd-pls-help&#x2F;" rel="nofollow">http:&#x2F;&#x2F;programujte.com&#x2F;forum&#x2F;vlakno&#x2F;5618-cmd-pls-help&#x2F;</a><p>[2]: <a href="http:&#x2F;&#x2F;www.rohitab.com&#x2F;discuss&#x2F;topic&#x2F;28776-cpu&#x2F;#entry10028813" rel="nofollow">http:&#x2F;&#x2F;www.rohitab.com&#x2F;discuss&#x2F;topic&#x2F;28776-cpu&#x2F;#entry1002881...</a><p>[3]: <a href="http:&#x2F;&#x2F;www.rohitab.com&#x2F;discuss&#x2F;topic&#x2F;30229-linear-equation&#x2F;#entry10038524" rel="nofollow">http:&#x2F;&#x2F;www.rohitab.com&#x2F;discuss&#x2F;topic&#x2F;30229-linear-equation&#x2F;#...</a><p>[4]: <a href="http:&#x2F;&#x2F;www.rohitab.com&#x2F;discuss&#x2F;topic&#x2F;36006-w32dasm-includes&#x2F;#entry10075660" rel="nofollow">http:&#x2F;&#x2F;www.rohitab.com&#x2F;discuss&#x2F;topic&#x2F;36006-w32dasm-includes&#x2F;...</a><p>[5]: <a href="https:&#x2F;&#x2F;ocw.mit.edu&#x2F;courses&#x2F;find-by-topic&#x2F;" rel="nofollow">https:&#x2F;&#x2F;ocw.mit.edu&#x2F;courses&#x2F;find-by-topic&#x2F;</a>
toastalover 3 years ago
I (American male, age 32) initially got into programming because my dad said I should try it. We had a Compaq Windows 97 machine I loved to tinker with--rural hometown, not much to do. He brought the QBasic editor home on a floppy disk and a print out of a tutorial online. First thing I did was try to PRINT Hello, world, but when I didn’t understand how to run a program, I thought maybe I literally needed to press print on the printer. It didn’t work.<p>Later I used that bit of BASIC to program my TI-86 calculator from reading its manual to &quot;show my work&quot; in math class because my math dyslexia led to a lot of partial credit because of how often I mixed up numbers while writing them down from my head. Teachers didn’t mind since it took a lot of understanding to write the programs from scratch.<p>Later I went to college as an art major. I took quite a few digital classes, and I usually had the most interesting Flash projects because I was the only one that vaguely understood how and what coding ActionScript could do. I decided to minor in computer science in my 2nd or 3rd year as a fallback in case &quot;art&quot; didn’t pan out. I got a website-building paid internship through the university my senior year.<p>After school I took a short contract to build a few-page website for an acquaintance in my college town. I did everything from setting up the GNU&#x2F;Linux VPS, overkill CodeIgnitor PHP framework, front-end for IE7, design, and even shooting photography.<p>When I looked for a real job after that, I didn’t have any luck in design but landed a Python position at a big company many miles away in which I was vastly underqualified for (didn’t know the languages, source control, how to do &quot;meetings&quot; and Agile). I (rightfully) didn’t last long, but I did learn a lot about how &quot;professional&quot; software should be built.<p>I took some time off (but also couldn’t land a new gig with my experience), moved back in with my folks, and decided to teach myself more thoroughly how to build websites. I landed another gig at ad agency and it gave me a lot of attempts to build basic landing page-type sites and practice other skills in a lower-risk environment.<p>I mostly avoided JavaScript though because I didn’t understand it and when I did I used purely procedural code. When I finally did decide to learn JS and design patterns, functional programming was starting to get the indie, &quot;cool&quot; vibes (2015)--and unlike my earlier failed attempts to teach myself object-oriented programming, FP kinda &quot;stuck&quot;. My bullheadedness let me go chase that paradigm specifically which led me to now doing purely-functional front-end applications despite the lower amount of available jobs.<p>I’m pretty far from the design, and my art skills are severely rusty, but I’m generally happy making the switch as remote work is plentiful and normalized in the field, and now I get to travel the world (pre-COVID) while I build things and having never-ending puzzles to solve.
ddekover 3 years ago
&gt; How did I get into programming?<p>I was doing a chemistry degree, and suddenly being able to code was a requirement. There were no classes, no recommended material. Just &#x27;welcome to this 6-week lab. Python experience is required&#x27;. Surprisingly while I got OK at programming that wasn&#x27;t a great experience, so I stayed away for a while.<p>When I graduated my focus was actuary, then data science (because that was starting to take off at the time). I had a fair amount of interest but I wasn&#x27;t fairly committed. I worked as a mathematical modeller for a while, that was when I started coding again.<p>About a year later I took an internship at a call center I&#x27;d worked at during university summer breaks. They wanted me to analyze insurance claims data to predict fraud. It failed massively but they still kept me around, but the work moved towards software engineering. I enjoyed it enough to stick around.<p>&gt; What is your experience with university?<p>The English system sucks. My degree is Chem, I wanted to add more maths and some CS. This was impossible on both counts with the universities module system. Chem takes up so much time while <i>theoretically</i> you can take modules from other schools, it doesn&#x27;t work in practice. It sounds like you&#x27;re in UK - if you want flexibility, go to Scotland for your degree. (Kinda OT but I&#x27;d rather take maths than CS.)<p>Most UK science degrees expect but don&#x27;t teach programming. I have data points supporting this from almost all the top 50 universities. The assumption is students are bright enough to work it out on their own time. This actually holds up to an extent, but the standard and style of scientists programming is a long way from industry.<p>The degree is absolutely worth it. Spending 3-4 years focusing on studying to an expert level will give you transferable skills you won&#x27;t get anywhere else. This difference is eminently observable to me now, not just from my experiences but from observing colleagues.<p>&gt; How did you get first paid work<p>Internship at an organisation I had friends high up in. I kinda lucked into this one.<p>&gt; What do you do now and what do you love&#x2F;hate about your job?<p>Lead engineer at an early startup, but leaving for a senior engineer role at a late startup. I love the problem solving aspect, and being surrounded by really interesting bright people.<p>I don&#x27;t like the way errors compound. Programming is really hard, producing excellent code takes time, effort, and often knowledge. It&#x27;s easy to make mistakes. Many mistakes don&#x27;t cause observable bugs, but harm the long term maintainability of the product. Over time, these build up, meaning large projects can become maintenance nightmares. I&#x27;ve become a bit of a specialist in un-fucking these, but I really hate doing it.
mojosamover 3 years ago
I taught myself to code on TRS-80 Mod 1 at my high school. I had seen a friend write a three line basic program that moved a dot onscreen, and about six months later told my math teacher I wanted to try drawing a circle using the formula we had just learned. I sat down with the Basic manual and did it. A few months later my folks got an Apple II and there was no looking back, I was coding nonstop.<p>I got my first paying job six months later; walked into a store to buy a book on assembly language, and saw a sign that said “Basic programmers wanted”; I applied, and they hired me for the summer. I kept getting summer jobs writing commercial software. I learned Pascal my first semester in college, taught myself C on their mainframe the following year. Took a year off school to travel and got hired to write some game software, and never went back.<p>Over the last forty years, I focused first on Apple II, Mac, MSDOS, and Windows apps; then Web development. The last 20 years I’ve focused on embedded development. I’ve worked as a freelancer &#x2F; consultant much of my career, but also was Dir of Software Engineering at a several startups along the way.<p>Be sure to talk to them about the embedded industry, which doesn’t get much attention on HN. It’s a huge part of the industry that most people don’t know about. We’re the guys who write the software that makes rockets, robots, respirators, and routers do what they do; most things powered by electricity these days have a got a little processor in them, and someone has to write the software that makes those things work. Practically every form of transportation, medical, communications, and consumer electronics device is either an embedded device or has embedded devices inside it.<p>Creating good embedded devices is extremely challenging; you often have very limited RAM and Flash, and yet have to create sophisticated, multithreaded software that might communicate with the Cloud via wireless protocols, but have to run for a year on a single battery without failure. In other cases you might be building an embedded device based on Linux, requiring custom drivers and complex applications. In others, you have to create software reliable enough that it can be used in safety critical devices without injuring or killing people, and that is able to withstand hacking attempts to turn your IoT devices into a botnet.<p>What’s interesting is that I originally didn’t think I wanted to be a professional software engineer, even well after I started coding at paying gigs; it sounded boring. But looking back, as a kid, all my heroes were great inventors, but I was inept as an inventor of physical things. Programming allows me to constantly invent and develop new things, and with embedded, those things also consist of mechanical and electrical components that other engineers create. I love it, and it pays great.<p>Finally, your students might be interested in this: according to the 2017 Stack Overflow annual developer survey (<a href="https:&#x2F;&#x2F;insights.stackoverflow.com&#x2F;survey&#x2F;2017" rel="nofollow">https:&#x2F;&#x2F;insights.stackoverflow.com&#x2F;survey&#x2F;2017</a>), while CS&#x2F;SE are the most popular degrees among professional developers, most professional developers don&#x27;t have a CS&#x2F;SE degree. Of the professional developers surveyed:<p>* About 23% had no bachelor&#x27;s degree<p>* About 42% earned a bachelor&#x27;s degree in computer science or software engineering undergrad<p>* About 8% earned a bachelor&#x27;s degree in electrical engineering or computer engineering undergrad<p>* About 7% earned a bachelor&#x27;s degree in computer programming or web development undergrad<p>* About 20% earned a bachelor&#x27;s degree in a non-programming-centric degree program (other engineering, natural sciences, math, humanities, system admin, etc) undergrad
ChrisMarshallNYover 3 years ago
I&#x27;ve found that folks around here don&#x27;t really like it, when I share my backstory. Not quite sure why. The only reason that I&#x27;m doing so now, is that I feel it would be inconsistent for me to avoid it. I do enough whining on other posts, so it would be jarring, if I didn&#x27;t do so here.<p><i>&gt; How did you first get into programming? Were any books, blogs, forums, or people particularly helpful for your growth? What is it about coding that got you hooked?</i><p>I had always been into electronics, ever since I was a wee bairn. I think my first electronics project was a HeathKit programmable calculator, in the mid-1970s. As my brother noted: &quot;I liked to take things apart.&quot; He followed that with &quot;and didn&#x27;t always put them back together, successfully.&quot; BTW: He&#x27;s also a self-taught engineer, working for a major, <i>major</i> corporation. He did well. Smart cookie.<p><i>&gt; What is your experience with university? Did you get a degree, was it worth it, do you think it helped you find work, what did you love&#x2F;hate about uni?</i><p>High school dropout with a GED (that I actually did well at, and graduated before I would have, anyway). It&#x27;s a long story, but I managed to make a pretty good hash of things, before I was 18.<p>I started picking up the pieces, and attended a somewhat sketchy certificate mill (since dissolved). Got a student loan, and it was the best investment of my life, so yes, it was worth it. How I picked that particular school, is a story, unto itself (which I won&#x27;t share). It was a two-year, full-time (M-F, 8-4, no summer off), EET program (generalist electronic technician). I wrote my first software, at that school (if you don&#x27;t count the HeathKit calculator). It was Machine Code, on an STD-Bus-based MC6800 CPU card. Pretty &quot;raw,&quot; but you really learned how things worked.<p>I enjoyed the characters I attended school with. Many were Vietnam vets, attending on the GI Bill (the &quot;sketchiness&quot; of the school was because a lot of these outfits popped up, in the late &#x27;70s, and early &#x27;80s, to milk the GI Bill, but this one actually taught you proper). They were a rough lot, but taught me a great deal about working through life&#x27;s problems (and I had a lot, back then). This was downtown Baltimore, in 1981-3. A significant number of my schoolmates were black. We also had a couple of State cops, attending (also Vietnam vets, but their tuition was paid by the State).<p>Interesting environment. I enjoyed the classmates, as much as I did the class.<p>During my career, I have attended over 30 seminars and bootcamps. Did a bunch of Apple DU classes (dating myself -no one else will). I took calculus, at college, then promptly forgot it all, as I never used it. I was just told that &quot;I needed to know it.&quot;<p><i>&gt; How did you get your first paid work (family &amp; friends, internship, freelance, full-time)?</i><p>The school had deals with local companies, for interviewing candidates as electronic techs. I interviewed at a local defense contractor that did microwave and RF work for various defense orgs (not just the US. They also did NATO and Israel).<p>I started as a bench tech, but had a habit of hauling over all the HPIB test equipment, and automating my analysis. This caught the attention of the Test Engineering team, and I was fairly rapidly promoted to a Test Engineer. In another post[0], I discuss the genesis of my very first project.<p>The rest is history.<p><i>&gt; What do you do now and what do you love&#x2F;hate about your job?</i><p>Thanks to the ageism in tech, I was forced into early retirement, and I write software <i>pro bono</i> for nonprofits. They seem happy with the work I do.<p>I <i>love</i> my job. I work very long hours at a standing desk, at home. Working is my favorite pastime. Since no one is interested in paying me for it, I do it for free.<p>[0] <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28454887" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28454887</a>
coldpieover 3 years ago
My dad, computer-savvy but not a programmer, taught me some very basics when I was in my early teens (late 90s). It happened to be in Java, but mostly amounted to printing text and if-statements, which could be in any language. From there I used the circa-2000 Internet to learn about programming, did some ultra-basic C and C++ Win32 programming. In high school I started making websites for friends, for tiny amounts of money. The frontend HTML was ultra-basic, but the backend was all in PHP with MySQL for storage and I wrote some fairly involved CRUD apps over years.<p>At the same time, I was always working in the background on various video game engines, mostly in C++. Did a little homebrew work on the PSP[1]. The culmination of all that was a friend and I making a 3D platforming video game in C++ with OpenGL, completely from scratch[2]. Switched to Linux and started making my own desktop apps for fun and trying (mostly failing) to contribute to projects. The same year I finished high school, I got a &quot;real job&quot; as an intern doing Java-based QA programming, thanks to an uncle who worked there and knew they needed programming interns. After two years there, I got my current job doing C systems-level programming and now I&#x27;ve been here for over 12 years.<p>I did go to a public US university to get a four-year Computer Science degree. It was a complete waste of time and money and is easily the biggest regret in my life. I was already working in industry before I even started college, for the first two years as an intern and then the other two years at my current position. I learned almost nothing in college and knew more about programming than most of my professors. I also had (and have) zero interest in computer science. It was just something I was told I had to do to get a good job. Complete waste. This was back when college was relatively cheap. I absolutely would not encourage anyone to go to college for the prices they are charging today. It&#x27;s a scam. (This is all US-focused, no idea what the situation is like elsewhere.)<p>As for books, Code by Charles Petzold (Microsoft Press)[3] is far and away the most useful programming book I&#x27;ve ever read. Anyone who does anything related to programming should read it. It walks you up from the very basics of computing all the way to modern computers in a very understandable way. I read it in early high school and it definitely shaped my career.<p>[1] These two PSP games remain among the projects I&#x27;m most proud of in my life, <a href="https:&#x2F;&#x2F;www.brightnightgames.com&#x2F;games.php" rel="nofollow">https:&#x2F;&#x2F;www.brightnightgames.com&#x2F;games.php</a><p>[2] We mostly succeeded, not bad for a pair of high schoolers, I think <a href="https:&#x2F;&#x2F;www.brightnightgames.com&#x2F;games.php?game=sa&amp;sec=development" rel="nofollow">https:&#x2F;&#x2F;www.brightnightgames.com&#x2F;games.php?game=sa&amp;sec=devel...</a><p>[3] <a href="https:&#x2F;&#x2F;www.microsoftpressstore.com&#x2F;store&#x2F;code-the-hidden-language-of-computer-hardware-and-software-9780735611313" rel="nofollow">https:&#x2F;&#x2F;www.microsoftpressstore.com&#x2F;store&#x2F;code-the-hidden-la...</a>
mettamageover 3 years ago
Did a bachelor into the little brother of CS: information science. Then went on to do a master in computer science. There I had a course that was about &quot;learn anything you want&quot;, so I took Paul Hegarty&#x27;s course on iOS development. That course landed me a job as an iOS dev at the uni for a year. I didn&#x27;t like the stressful manager, so I got back to my studies again.<p>I hated my thesis and went to a coding bootcamp to apply as a student. They noticed I could explain things well and understood every slide instantly (thanks to my CS education). They asked me to immediately become an instructor provided I could build a NodeJS app within a month to prove my skills. I&#x27;ve built 4 NodeJS apps within that timeframe [1]. Then I freelanced for a bit.<p>After graduating I applied to FAANG companies and didn&#x27;t hear back from any of them and got really disheartened. I always wanted to work at FAANG and they didn&#x27;t care about my resume or the fact that I completed a <i>master</i> in computer science! That part of my life took 2 years. Don&#x27;t apply to FAANG when you just finished your CS master and expect them to call back [2]. Now I work at a small company.<p>If I could do it all over again:<p>Skip bachelor and master [3]. Why? All I needed was some guidance in the beginning. I knew I wanted to create web apps and websites. Back when I started coding bootcamps weren&#x27;t a thing, but that&#x27;s what I needed. What good coding bootcamps allow you to do is teach you how to self-teach yourself whatever you need to learn with computers.<p>Was university useless? No not at all, but it wasn&#x27;t efficient with my time. I believe that at least 50% of my time was wasted on stuff I didn&#x27;t need. The other 50% helped me with learning <i>many</i> tools to understand things very quickly, mostly because I&#x27;ve already seen them before. An example was when I was debugging an issue with EmberJS and needed to dive in the core internals of it. Then I realized that EmberJS its rendering engine is designed as a virtual machine! Since I did a course on computer systems it was easy to see understand what they meant with opcodes, a stack and system calls. I think it&#x27;d have been magic to me if I didn&#x27;t follow a course on computer systems.<p>[1]<p>* An app that analyzes and displays sentiment on Twitter (basically my bachelor thesis in a web app)<p>* Their penultimate assignment (a blog in NodeJS) as their ultimate assignment is to make whatever they want to make<p>* A small app that people could use with the game Maffia to vote people out<p>* A small website to track hackathons that had a small CMS behind it (I had some designs from a few years ago and always wanted to make it)<p>[2]<p>Note: I live in Europe, YMMV in the US (since even coding bootcamp grads sometimes get invited).<p>[3] Maybe get a degree for credentialism, but only on the side and only if it&#x27;d be cheap
digganover 3 years ago
I first got into programming when wanting to hack websites, around 13&#x2F;14 years old. Me and my friend found hackthissite.org (which still seems to be running to this day, looking identical to how it was back then) and started doing the different challenges. We both realized we both needed to understand how to create programs in order to figure out how to destroy them, so we started learning programming. I ended up finding it more fun to create things than the security aspects, so I stopped trying to figure out hacking, and started building websites with PHP instead.<p>In the meantime I was studying bunch of different subjects in high school and gymnasium (I think it&#x27;s called so in English, in Swedish would be &quot;gymnasiet&quot;), nothing related to IT. Also had bunch of different jobs at the same time. Programming was just a hobby.<p>Fast forward to around 2012, I moved from Sweden to Spain (Barcelona) and started working with call centers for cold calling and also support. It got very boring very quickly, compared to elder care that I did in Sweden, so I started looking around for other opportunities.<p>I started emailing bunch of different startups (companies with less than 10 people) in Barcelona that I was happy to work for free just in order to build a resume and could start out doing internships if needed first.<p>Out of ~20 emails going out, one replied and I interviewed there. The owner of the company agreed to let me start working there, but not for free since it&#x27;s not legal so I had to be paid at least minimum salary by law.<p>Did that for 1.5 weeks and then the owner wanted to hire me, even though I had zero experience with professional development. After that I started publishing some open source libraries that made other companies look my way in Barcelona as well. But without that first position in the startup that answered, I&#x27;d probably wouldn&#x27;t have gotten into the industry. So thank you Martin!<p>&gt; Some questions I&#x27;m interested in are: How did you first get into programming?<p>Curiosity and wanting to break things. Grew up and started wanting to create&#x2F;contribute things instead.<p>&gt; Were any books, blogs, forums, or people particularly helpful for your growth? What is it about coding that got you hooked?<p>Stack Overflow and IRC were the top resources, particularly IRC as people were less anal, more friendly and you also got to know people, compared to Stack Overflow which is very transactional.<p>&gt; What is your experience with university? Did you get a degree, was it worth it, do you think it helped you find work, what did you love&#x2F;hate about uni?<p>Generally don&#x27;t like the structure of having one teacher &lt;&gt; many students and feel it&#x27;s generally a waste of time. But I could just have had a shitty history with schools in general. I dropped out of school as soon as I could.<p>&gt; How did you get your first paid work (family &amp; friends, internship, freelance, full-time)?<p>Outlined above but short answer: Acknowledge I would work for pennies (or less) and cold-email all startups in the city I lived at the time. Ended up in a full-time position.<p>&gt; What do you do now and what do you love&#x2F;hate about your job?<p>Nothing! I love it :)