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: HN people who write meaningful software, how did you learn to program?

74 pointsby curious16over 2 years ago
The word &#x27;meaningful&#x27; may be a bit ambiguous. It infact is. By &#x27;meaningful&#x27; software I mean any software that has meaning to you or your customer. The thing is you deliver value in one way or the other. E.g: You write and maintain an open-source package used by quite a few people. Or maybe you wrote and website as a hobby. Now, it is used by quite a few people so you maintain it and the revenue it generates is your primary source of income.<p>If the above description fits you, can you recall how you learned to program and build meaningful things? More importantly what drew you towards programming, and not another subject? And if possible, mention THE meaningful software you wrote.

53 comments

notjustanymikeover 2 years ago
An important lesson I learned is that meaning and complexity are rarely linked. The most profitable code I wrote for a company took under a week and truthfully any mid-tier web developer could have done it. The code with the largest reach (millions upon millions of people) was an afternoon script. I’ve lately come up with a term for meaningful code: Friday Features. Little things you do on a Friday afternoon that have an outsized impact. Meanwhile a project I worked on for months didn’t move the needle at all.<p>How did I learn? Started coding in college, about as mundane a start as you’ll hear, but it does kinda prove my point that meaning and work can be very detached from eachother.
评论 #33037007 未加载
评论 #33036821 未加载
mradekover 2 years ago
I’m a full stack (web and mobile) engineer. When I was on product teams building the actual app experiences, I was so much happier and fully engaged. I thrive from customer feedback calls and working with product manager to build the best solution for the problem at hand. Probably built a dozen calendars and complex grid layouts, tested a few different cart&#x2F;checkout flows, and improved performance for a tool by rethinking the way it was stored in the database that made it way more flexible for other purposes.<p>Now I work on purely backend, mostly services for other services, infra stuff, and it’s honestly so boring and dull. I know it’s important work as well, but it’s just not my cup of tea.<p>Unfortunately it seems that building products doesn’t pay as well as doing this purely backend plumbing. And I want to work on products which people out in the fields or in some specific industry use to do their jobs better. When I was doing this, I felt like I was actually making peoples work experience (and probably sanity) better.<p>Anyway I am a self taught and I just learned using YouTube videos, official docs&#x2F;readme, looking at peoples code on GitHub, and also building out my own silly ideas. Probably have a hundred directories of half+ baked projects.<p>Feel free to reply if you work on an interesting product (please no dashboards for monitoring cloud systems :sob: lol) and looking for a guy who loves to build great app experience. Also down to discuss ideas!
评论 #33080033 未加载
mickael-kerjeanover 2 years ago
With so many people laughing at the infamous top comment of the Dropbox HN launch[1], I got obsess with the idea one day we would be able to generate Dropbox like UI for any protocol like FTP by implementing this simple interface:<p>```<p>interface IBackend {<p><pre><code> ls(path) []file cat(path) stream save(path, stream) rm(path) mv(from, to) mkdir(path) </code></pre> }<p>```<p>So I open source my work [2] as a result of that thought experiment. Almost 7k github star later, there&#x27;s about 40k users who use my tool every month to access their FTP server, SFTP server, S3, WebdAV and more protocols and was contacted by people in places I would have never dream like NASA and MIT.<p>That project is a few order of magnitude more impact full than anything I&#x27;ve done in my professional life and I&#x27;m super excited to the prospect of developing the idea further as file manager are an amazing abstraction. My mum can navigate through folders and click on files but I would have a hard to time to explain her what a tree is and a lot of complex system can be model as simple file managers. A good example which was implemented in Filestash [3] is a relational database, the db can be modeled as different folders, tables as subfolders and rows as file which can be edited and save back which would under the hood simply generate a bunch of sql queries<p>There&#x27;s still a lot to do but at this stage, it doesn&#x27;t make enough money to make it a full time job yet.<p>I learned how to code from a massive rabbit hole that started in high school while trying to make myspace pages look nice<p>[1] <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=8863" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=8863</a><p>[2] <a href="https:&#x2F;&#x2F;github.com&#x2F;mickael-kerjean&#x2F;filestash" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;mickael-kerjean&#x2F;filestash</a><p>[3] <a href="https:&#x2F;&#x2F;github.com&#x2F;mickael-kerjean&#x2F;filestash&#x2F;blob&#x2F;master&#x2F;server&#x2F;plugin&#x2F;plg_backend_mysql&#x2F;index.go" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;mickael-kerjean&#x2F;filestash&#x2F;blob&#x2F;master&#x2F;ser...</a>
评论 #33037233 未加载
评论 #33037656 未加载
silisiliover 2 years ago
Ignoring Commodore&#x2F;BASIC, which I really just used to load things more than programming, I think my first actual programming was QBASIC in elementary school. My nerdy friend knew some, I watched over his shoulder and tried my own.<p>By 11 or so, I became fascinated with AOL &#x27;proggies&#x27; and picked up Visual Basic. Made a few of those. Ended up writing a keylogger on commission that I believe partly led to a man&#x27;s murder. Story for another day.<p>After that I lost interest in programming with typical teen stuff, didn&#x27;t really even use a computer much until later...I guess 21 or 22. Hired to do menial data entry tasks, and decided to automate my way out of it. Next job, same thing. Decided to read a few Python books instead of just Googling as I go as I did as a kid.<p>Over the years since, it&#x27;s mainly just been picking up things as I need them or they interest me. Learned enough C to work on an open source library. Learned Go because Python deployments were annoying(among other things), and so on.
评论 #33036940 未加载
评论 #33036862 未加载
majora2007over 2 years ago
I build open source software, I have one project with nearly 2k stars. It is a product itself and used by thousands of people. I do this while also holding a job as open source doesn&#x27;t pay (although I do have donations).<p>I&#x27;ve always enjoyed learning and coding, especially when I was in college. I remember in High School I learned about VB in Word and fell in love with how fun it was (not the language). That sealed me in and during college I would learn and code for fun, rather than do the homework assignments. I&#x27;ve always really loved it.<p>I&#x27;ve learned from watching youtube, reading articles, reading pull requests in software I liked or used, and just doing it. For the project above, I did it in Angular, something I already learned from work and C#, something I had touched a bit in college but due to the cross platform (.net 5), i picked it up as something to learn. Bought 1 course on Udemy, watched half of it and started coding. It was always a program to meet my needs but the lack of competition made me release it and grow with the communities needs as well.<p>For anyone interested: <a href="https:&#x2F;&#x2F;github.com&#x2F;Kareadita&#x2F;Kavita" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;Kareadita&#x2F;Kavita</a>
marssaxmanover 2 years ago
While I have never managed to create any software as meaningful as the level I hoped my career would reach, writing code <i>has</i> after all given me a lifelong career, so the things I&#x27;ve made must have meant something to someone.<p>I was a child, and computers were fascinating. I wanted to learn everything about them. When someone showed me that I could write a program of my own, that I could make the computer do what I wanted it to - that was <i>it</i>. I dug into programming just as hard as I see some kids now dig into video games, and I kept that exploration up for decades.<p>Much of my career I&#x27;ve spent trying to pass along something like that formative experience: in various ways, building tools which empower people to take greater control of their own computers.
techwizrdover 2 years ago
I work in aviation safety. I build data pipelines and statistical and AI&#x2F;ML models to identify potential hazards.<p>Like many, I&#x27;m self-taught and learned to program before formally studying CS in college. I found my dad&#x27;s copy of the K&amp;R C book and would sneak into my parent&#x27;s bedroom at night to write code on the family computer (he was jaded from his career and didn&#x27;t want me to become a coder). I&#x27;d debug during the day in school. I found more programming books at the library and learned more languages that way. I mostly learned by building little projects constantly.<p>Curiosity is what drew me to programming. There was an endless supply of interesting problems to think about and I wanted to figure out how things worked--no different from a budding civil or electrical or mechanical engineer wondering how the infrastructure surrounding them worked. The big difference, I think, is that software is considerably more accessible as a young child than, say, building a bridge or building or robot.
TrackerFFover 2 years ago
I started out coding on the side when I was a teen. Mostly just building native GUI applications in VB and Java, maybe some scripts here and there. I think it was a cool start because we could easily do stuff that worked...things like chat clients over our school LAN, scripts which would pull data&#x2F;files from somewhere, and send them to the people.<p>Then I studied at University, where I got a more fundamental grasp of how things worked. My first job revolved around industrial automation and such.<p>These days I work in data science &#x2F; engineering, and I write a lot of &quot;useful&quot; stuff for automating various tasks. It was really fun to automate stuff which freed up around 1000 manhours a week - not really impressive on the mega scale that many FAANG engineers work on, but when the company has xx people working on menial stuff which can be automated, you really do feel a sense of accomplishment.
bheadmasterover 2 years ago
I&#x27;ve only done a few personal projects for friends - image scrapers, PDF splitters, and such small utilities, but I&#x27;ve done quite a lot of work for the company I work for (my first job, still employed there).<p>I&#x27;ve learned quite a lot of theory at college, but I&#x27;ve learned the most by just writing code on my job. I&#x27;ve had quite a lot of independence and ownership of my code - complete freedom to do whatever I want to make it work - in the first ~2 years, so I&#x27;ve written and re-written my software every time I found that I&#x27;ve coded myself in the corner. After a while, I started to see patterns of which ideas work well and which don&#x27;t, my understanding of programming in general has deepened a lot, and I&#x27;ve become able to write just about any random web-service in a reasonable amount of time.<p>In a nutshell: just write code.
zeglover 2 years ago
I&#x27;ve been building a lots of what&#x27;s hopefully &quot;meaningful&quot; software for over 10 years now, at startups (others startups, and now my own), for open-source (zegl&#x2F;kube-score being my most popular OSS creation), and large enterprises.<p>I started to become interested in how computers where working when I was ~12, mainly driven by boredom. I didn&#x27;t know how anything worked of course, but somehow was determined to create my own website, and struggled my way into HTML and free FTP&#x2F;WWW hosting through various Swedish computer forums and guides. From there I added to my knowledge step by step, I learned CSS to make my sites less ugly, then PHP to be able to &quot;log in&quot;, then SQL&#x2F;MySQL to be able to create a &quot;guestbook&quot;, and then some JavaScript, etc etc etc.<p>After a few years of spending all free time at the computer, I got my first job&#x2F;internship when I was 14.<p>During my first 6 years or so as a &quot;programmer&quot;, I don&#x27;t think that I ever considered reading a book on any of the topics. I just went at it, and copy-pasted and brute-forced my way forward until things started to &quot;click&quot; in my head.<p>I very vividly remember a moment when I realised that I suddenly knew how to create a website that would look exactly the way I wanted, from scratch!<p>I was building things purely for fun, and started new projects seemingly every weekend. But I kept shipping, and somehow absorbed more and more knowledge.<p>These days I might read a book&#x2F;paper&#x2F;documentation to learn about a new topic, but brute-forcing&#x2F;learning-by-doing is still my favourite way to learn.
incomingpainover 2 years ago
I have 42 github stars, I suspect that&#x27;s not impressive but perhaps meaningful enough.<p>&gt;Now, it is used by quite a few people so you maintain it and the revenue it generates is your primary source of income.<p>I kind of wish I knew how to do that. I have 2 fully functioning products but I have no idea how I go about trying to sell them and give random people access and support problems etc. All the while still holding a job so I can pay the bills.<p>&gt;If the above description fits you, can you recall how you learned to program and build meaningful things? More importantly what drew you towards programming, and not another subject? And if possible, mention THE meaningful software you wrote.<p>So I went to college whose tagline was that you are already skilled sysadmin and you want to upgrade or refresh your skills. In reality it was a class full of people who vaguely knew how to type.<p>So in my boredom I bought a &#x27;learn C programming&#x27; book and taught myself how to program. I had already known bash and dos pretty well. C# and .net probably would have been the better choice but they were new at the time and not linux compatible.<p>The awful syntax of C really damaged my software development track. Many years later I got into python and frankly I wish I had gotten into python forever before. Now I love programming.<p>So my 2 private projects. 1 is a honeypot network which produces a threat feed of ip address in txt and stix output. Pretty much all the usual nextgen firewalls can ingest and block traffic.<p>The other is an NCM built with django. If pulls configs off the usual networking devices but also effectively runs a report to tell you what rules you are breaking in the security hardening guide.
jmartin2683over 2 years ago
I’ve written a lot of software that made a lot of other people lots of money, basically… initially in social media and now the healthcare industry.<p>I ‘learned to program’ when I was a kid back in the 90’s from books that my mom’s boyfriend had gotten me, trying to steer me that way. I didn’t like it much and it wasn’t until many years later that I picked it up again and got good, mostly driven by a desire to understand how old video games worked.<p>The thing that took me from a dude who knows how to do basic stuff to a senior engineer at a big company was having a mentor. My real programming job came with a fantastic one and he taught me pretty much everything I needed to know… he spent a lot of time distilling many years of acquired experience into something I could consume alongside him and I’ll forever be grateful.
评论 #33042579 未加载
jokethrowawayover 2 years ago
I learned to program because I needed to get things done.<p>First I wrote a tool to check a bunch of coupon codes on a website, then I taught myself to code to hack a friend who tried to hack me. Eventually it turned into writing tools to hack websites and then it turned into making them. Then it turned into entrepreneurship, contracting and now bootstrapping small projects which collectively make a good amount of money.<p>The key skill to effect change in the world (and reap the benefits) is not programming, it&#x27;s learning to think in terms of product and use software as a way to deliver value.
trompover 2 years ago
I learned programming my first computer, a Sinclair ZX Spectrum, using its accompanying manual [1]. When I wasn&#x27;t busy playing games on it, I programmed things like maze generators and a connect-4 player. Then I studied Z80 assembly programming to make the latter run much faster. A few years later I started my Computer Science studies at the university of Amsterdam...<p>[1] <a href="http:&#x2F;&#x2F;zxnext.narod.ru&#x2F;manuals&#x2F;Basic_Programming.pdf" rel="nofollow">http:&#x2F;&#x2F;zxnext.narod.ru&#x2F;manuals&#x2F;Basic_Programming.pdf</a>
pengoover 2 years ago
In 1990 I was programme director of a radio station and had an ongoing requirement that only software could efficiently deliver. There was no suitable app available and I had neither the budget nor management permission to pay for it to be written. In the end I said &quot;How hard can this be?&quot;, took home a (very primitive) laptop with DOS and GB-BASIC on it, and taught myself to code.<p>With the lessons I learnt from that I bought a c compiler and kept learning. Six years later I left the radio industry to work full time as a developer.
nicbouover 2 years ago
I started at home, using guides on the internet. My first project was Random Facts for Palm OS.<p>However I made my first real money building websites for small businesses. This is where I learned what customers actually value. It also taught me how valuable an honest broker [0] is. Honesty is a powerful sales pitch. Trust signs blank cheques.<p>I then spent a few years as a professional web developer, making not-so-meaningful things for large companies. It slowly killed my passion until I found my way out.<p>Recently, I returned to small, home-cooked software [1]. I run a website that helps people immigrate to Germany. I built many tools and calculators to support the content [2]. It&#x27;s so much more fun to build concrete stuff! With many users but no paying customers, it&#x27;s a lot more relaxing. People really seem to enjoy the tools too.<p>I thought that I&#x27;d lost my passion for programming, but in reality I just don&#x27;t like professional programming. I probably wouldn&#x27;t like being a professional cook either. Better keep it small and personal.<p>[0] <a href="https:&#x2F;&#x2F;tedgioia.substack.com&#x2F;p&#x2F;how-i-became-the-honest-broker?s=r" rel="nofollow">https:&#x2F;&#x2F;tedgioia.substack.com&#x2F;p&#x2F;how-i-became-the-honest-brok...</a><p>[1] <a href="https:&#x2F;&#x2F;www.robinsloan.com&#x2F;notes&#x2F;home-cooked-app&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.robinsloan.com&#x2F;notes&#x2F;home-cooked-app&#x2F;</a><p>[2] <a href="https:&#x2F;&#x2F;allaboutberlin.com&#x2F;tools" rel="nofollow">https:&#x2F;&#x2F;allaboutberlin.com&#x2F;tools</a>
f0e4c2f7over 2 years ago
Not 100% sure if I qualify or not. I&#x27;ve wrote a little code other people have liked. Occasional websites and that sort of thing. I&#x27;ve wrote code that I cared about for work and was useful for other people. The code I&#x27;m currently writing matters very much to me but I haven&#x27;t sent it to anyone in the form of a game yet. I&#x27;ll leave it to you to decide if that fits what you&#x27;re looking for.<p>I was quite intimidated when I first started learning programming concepts. It seemed much harder than other things I was doing with computers. I initially started goofing around with windows bat files because they were somewhat less intimidating. Then I switched to basic bash when I switched from windows to linux. You actually get fairly advanced concepts in bash, they&#x27;re just a horror to use. Then eventually web programming &#x2F; python.<p>The moment when it all really clicked for me was when I decided I was going to learn web dev by brute force. Rather than getting into libraries and stuff I just wanted the simplest thing that would actually work against a web browser. I wrote the first thing in cgi-bin scripts and bash to render html and a form. Then once I understood the basic mechanic I switched over to doing it in Django and python and learned a more programming basics in that process.<p>I&#x27;ve repeated that broad scope process a lot though. Build the crappy version first, then once you see how it works go back and start trying to figure it out the right way. I find for me, where I can - it&#x27;s a lot easier when I can get it to work myself first and the work backwards from that.
mindcrimeover 2 years ago
That&#x27;s a complicated question to answer. My &quot;learning to program&quot; over the years has been a mixture of self education from books, formal education, on the job training, reading OSS code, attending conferences, attending user group meetings, watching Youtube videos, etc., etc.<p>But the bulk of it, IMO, was just reading books (<i>Teach Yourself C</i> by Herbert Schildt was were it all really started for me) and working through the exercises. So hours and hours and hours of firing up Turbo C++ and going through the exercises in that book, and then later others. I majored in Computer Science at UNC-W (but dropped out before graduating) and that is where I was exposed to the Deitel &amp; Deitel books, and after that I spent a lot of time reading and doing exercises in <i>C:How to Program</i>, <i>C++:How to Program</i>, and <i>Java:How to Program</i> by Deitel &amp; Deitel.<p>There was more formal schooling that came after that era, but I look at the <i>bulk</i> of my programming education as being all that reading and coding I did back in the late 90&#x27;s and very early 2000&#x27;s.<p>That said, I&#x27;m still learning even now, so the story hasn&#x27;t been fully told just yet. Maybe we get one of those Matrix style direct neural interface things, so I can &quot;jack in&quot; and experience a &quot;Prolog? I&#x27;m going to learn Prolog??&quot; moment before it&#x27;s all said and done.
jqcoffeyover 2 years ago
I started doing impactful things by listening to friends express a need for something (like a shopping cart for their auto parts catalog circa 1998) and just doing it (they of course offered to pay me). I had no real clue what I was doing in code at that time, and had to learn a ton to get the job done.<p>Looking back on my career, taking vague requirements and turning them into something useful after a hard slog through unfamiliar territory is pretty much the common thread in all my successes.
spiralwover 2 years ago
I make PluralKit[0], a FOSS[1] Discord bot designed as an accessibility tool for plural systems [2]. A lot of people say it&#x27;s really helpful to them, some even say essential, so it probably fits under meaningful :p It had massive growth the last couple years, going from 20k discord guilds to almost 500k now, making it one of the largest bots on the platform.<p>I was always interested in computing (to the point of asking my dad how to install linux when I was 6, not that he knew how to help lol) but only got started with programming (at about twice that age) when I started getting annoyed at how exactly computers worked, and figured out I can make them do different things with code.<p>I started working on PluralKit itself a few years ago - already a year or so after someone else created it - because I was struggling to find my own identity and this project helped a lot, and I guess I stuck with it! I hope to make it a full-time job soon, but I am very much not a business person and it&#x27;s a bit of a struggle to figure out the details.<p>For me, code is of course a tool to make machines do things I need it to, but more importantly it&#x27;s art - what I do is something that helps people rather than harm them (cough adtech cough), and I think that&#x27;s beautiful.<p>[0] <a href="https:&#x2F;&#x2F;pluralkit.me" rel="nofollow">https:&#x2F;&#x2F;pluralkit.me</a> [1] <a href="https:&#x2F;&#x2F;github.com&#x2F;pluralkit&#x2F;pluralkit" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;pluralkit&#x2F;pluralkit</a> [2] &lt;<a href="https:&#x2F;&#x2F;morethanone.info" rel="nofollow">https:&#x2F;&#x2F;morethanone.info</a>&gt;
sandreasover 2 years ago
Hey,<p>I&#x27;m the author of m4b-tool[1] and tone[2]. The most important thing I learned about software development, is that the best software has a meaning to yourself and that you should use it yourself on a regular basis.<p>m4b-tool is a tool to merge multiple audio files into the m4b audio book format. I hacked it together in a weekend in the language I knew best (PHP) and that probably was the worst for the job. All because there were no tools, that fitted my needs. After the first improvements I said to my self: Why not open source it, even if it is in a pretty crappy state? And the feedback was surprisingly good for a hackish script. And I learned A LOT from the community (e.g. how to implement something like multithreading in PHP or the simple fact that `cd -` goes back one directory in history).<p>Another important thing I learned is, that early shipping is good, but automatic deployment and versioning is nearly as important. Thats why I decided to invest some time and simply release `tone` based on git tags with github actions... that was a very good decision so far.<p>So to conclude:<p><pre><code> Build something, that you use (and want to improve) yourself Ship early Go for auto-deployment &#x2F; CI as soon as possible Do some &quot;marketing&quot; for high quality feedback (e.g. on hackernews) Cover your ass with automatic tests as soon as possible </code></pre> [1]: <a href="https:&#x2F;&#x2F;github.com&#x2F;sandreas&#x2F;m4b-tool" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;sandreas&#x2F;m4b-tool</a><p>[2]: <a href="https:&#x2F;&#x2F;github.com&#x2F;sandreas&#x2F;tone" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;sandreas&#x2F;tone</a>
obsidian743over 2 years ago
I mean, I&#x27;ve written lots of software that&#x27;s &quot;meaningful&quot; according to your definition, but is still not impactful beyond a limited scope. For instance, I&#x27;ve written code that helps borrowers manage their student loan accounts from a major loan servicer (about ~8 million users). I&#x27;ve written ERP software, help desk ticket management, proposal management software, HR compensation analysis, IoT security, banking account management, and all kinds of other things.<p>I started learning how computers work back in the 80s&#x2F;90s because we were poor and I had to hack my computers to work with the games I wanted to play. So I&#x27;m running Doom on a POS 386 and have to hack&#x2F;tweak everything from DOS to the modem init string when playing over TCP&#x2F;IP. I had started to learn batch scripting and some QBASIC around that time as well. I learned QBASIC because I wanted to create my own &quot;snake&quot; game and eventually my own RPG.<p>When I was around 10, I went to &quot;bring your kid to work&quot; day for a friend of my dad. He was a programmer who wrote C&#x2F;C++. He gave me a copy of Borland Visual C++ and a book. I started learning what I could but it was silly console stuff. Eventually the web came out with HTML and Javascript v1 and I started creating my own web pages for myself and for random businesses like my local church and some friends. By the time I was 16 I got a kick-ass job programming and doing IT stuff for the American Military University, coding in Visual Basic, Visual C++, Java, and other random stuff. Skipped college because I got an offer from a major defense contractor making great money for a 18 year old. Now I&#x27;m on track to be CTO within a division at a major company (I&#x27;m 40 years old).
dsiegel2275over 2 years ago
I&#x27;ve been lucky to have worked on and have built what I consider both &#x27;meaningful&#x27; and &#x27;impactful&#x27; software throughout my now 25+ year career. I wrote code to help detect and analyze cracks within nuclear reactor steam generator tubing, code that allows US Army battlefield commanders to communicate intent and plans, and most recently code that is democratizing access to adaptive learning tools for higher ed.<p>How did I learn to program? I learned how to write code starting in second grade, learned how to write production code as a member of team in my first couple of real world jobs.<p>How did I learn how to build &#x27;meaningful&#x27; things? Beyond coding skills, I had to learn how to communicate effectively with people. I had to learn how to present my ideas in group settings, I had to learn how to listen to folks when they talked about their needs and wants, and how to dig in and really understand what was needed, coding-wise, to meet their actual real use cases.
lee101over 2 years ago
I made <a href="https:&#x2F;&#x2F;text-generator.io" rel="nofollow">https:&#x2F;&#x2F;text-generator.io</a> basically to bring down the costs of ml&#x2F;ai, people enjoy it because it&#x27;s around 10x cheaper than OpenAI and does multilingual text and code too, now I&#x27;m doing speech-to-text 8x cheaper than Google so saving people a lot of money right now. Hopefully it&#x27;s meaningful already but I&#x27;d like to bring the cost of any intelligence down to near zero which would I think make a big difference having things all operate well for us.<p>My mum was a punch card and fortran programmer, my brother&#x27;s a software engineer too so it&#x27;s in the family I suppose, i got into it making games and I got an apprenticeship making websites out of highschool, that set me up to go through computer science faster and easier than normal in 2.5 years
spiegltover 2 years ago
I don&#x27;t really know how many users I have, so I don&#x27;t know how &quot;meaningful&quot; my projects are, but I have found some of them posted on French, Chinese, Greek, Russian blogs etc., so hopefully they fill some people&#x27;s needs besides my own.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;spieglt&#x2F;flyingcarpet" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;spieglt&#x2F;flyingcarpet</a><p><a href="https:&#x2F;&#x2F;cloaker.mobi" rel="nofollow">https:&#x2F;&#x2F;cloaker.mobi</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;spieglt&#x2F;cloaker" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;spieglt&#x2F;cloaker</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;spieglt&#x2F;whatfiles" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;spieglt&#x2F;whatfiles</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;spieglt&#x2F;winage" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;spieglt&#x2F;winage</a><p>I learned to program because I was frustrated that after working in IT consulting for several years, I still had no idea how computers worked. I started with &quot;Learn Python the Hard Way&quot; and &quot;Automate the Boring Stuff with Python&quot;. Then got a job doing some Windows consulting stuff, and they said they&#x27;d hire me as a software engineer if I learned Go, which was a pretty easy step from Python. I&#x27;d tried to learn programming as a kid several times and always found it too frustrating. I started working on side projects as a way to learn new languages, improve my resume, and scratch my own itches. The hardest part was coming up with ideas for useful&#x2F;worthwhile projects. I was super frustrated one day that the easiest way to get a file between two machines that were right beside each other was sending them out to the internet via Google Drive or Dropbox, which made me want to write &quot;cross-platform AirDrop&quot;, which became Flying Carpet. If you find yourself wanting a simple piece of software that seems like it should already exist, that&#x27;s a great project idea.
khedoros1over 2 years ago
I became interested in computers through games, and was fascinated the first time I saw one play video (1993-ish?) That grew into an interest in controlling them, with programming being the natural route. I got a book of BASIC code when I was about 11, and ended up being able to take some programming classes at about 14. College for Computer Science meant some intro programming classes, and I started taking part in programming competitions.<p>After graduating, my first software that had much meaning to me was &quot;KhedNes&quot;, an NES emulator that I worked on, on and off, from about 2008-2014. Professionally, I worked on a piece of backup software that had 10s of thousands of companies as customers at its peak. That was definitely a neat thing to think about.
keikobadthebadover 2 years ago
I learned to code before the Internet so there was a very small amount of examples and I had to trial and error the rest. My first code was bad quality, but it did work.<p>After that I had many things to feel bad about from previous works and was motivated to do the next thing better, finding my own ways to improve it, not always hitting on the best way.<p>Then FOSS started up in earnest and I could work on and learn from sources like Linux, suddenly the areas I was lacking in could jump forward and my code was more than good enough for my own foss projects.<p>I have a liberally-licensed project used by a lot of people for a long time. But I can&#x27;t find a way to make any money from it.
erwinhover 2 years ago
Meaning-making is quite an ambiguous thing and mostly in the eye of the beholder. Taking that as a starting point I basically follow what others are responding to which led me to building tools, data analysis and writing articles for the digital&#x2F;generative art community experimenting with blockchain on the <a href="https:&#x2F;&#x2F;thestackreport.xyz" rel="nofollow">https:&#x2F;&#x2F;thestackreport.xyz</a>.<p>Started out with posting some initial charts on twitter in 2021 which got good feedback and it grew from there. Hanging out in art circles helps a lot btw for questioning what is &#x27;meaningful&#x27;.
sokoloffover 2 years ago
Taught myself BASIC from the TRS-80 manuals, the “BASIC Computer Games” books, typing in code from magazines, then took some formal computing coursework in college.<p>The above was the start&#x2F;spark, but actually learning to write commercially useful code came from, well, working writing commercially useful code at a series of startups and small companies.<p>The specific area that I work&#x2F;worked in isn’t that important to the question IMO. It’s had a wide range spanning from gaming to hedge fund to computer languages to business services. (Gaming paid the worst but taught me the most per year.)
acaloiarover 2 years ago
I learned out of necessity. At the time in the late 90s and early 00s, Sourceforge was big (It was Github of the time). There were multiple projects that I used and wanted to make modifications to, so I learned the languages that they were implemented in to do that. Over the years, those changes became less minor.<p>Eventually I started hosting a spinoff of Livejournal (LJ was&#x2F;is? open source), and my users were asking for private messaging, so I added it by learning Perl. It was a great experience.<p>I mostly made sure that I was having fun and scratched my own itch.
arasxover 2 years ago
I am self taught, formal education in a different field. I don&#x27;t know if this would answer your question perfectly but I believe whatever success I had in delivering technology came from curiosity. I remember always thinking about how things run under the hood. Always ask questions. Pseudo-prototype how I would deliver it myself. This would shed a knowledge gap in certain areas because I would not be able to plan a certain step&#x2F;process. Then I&#x27;d focus on that area and learn. It all starts with a hello world.
TYPE_FASTERover 2 years ago
My dad was a mechanical engineer. One of my first memories is playing Hunt the Wumpus on a SYM-1 with him. Later, we had a Commodore VIC-20, Commodore 64, etc. I taught myself BASIC. It was really cool to be able to create so easily. Just turn the computer on, and start typing.<p>Then I got a job writing BASIC around the time I was in high school, and by the time I went to college, I was lucky, knew what I wanted to do, and got accepted into the Computer Science program as a freshman.
cafardover 2 years ago
There was some data in files over here, and I needed it in a different format over there. I had a guide to the minicomputer instruction set, a reference for its system calls. After enough errors, the program first assembled, then ran. About then my wife prodded me into taking classes at a local continuing education program.<p>What drew me to programming was first that it could save a lot of time, second that people would pay me to do it. It was quite a while ago now.
culanuchachamimover 2 years ago
I tried many times to learn programming in the internet (Coursera, Udemy, YouTube, CodeAcademy, etc) and I was never successful. I always managed to get a few lessons and things strat getting complicated and I drop.<p>Two year ago, a family member, who have a very small charity institution, and all the income&#x2F;outcome was written up in a notebook, ask me if I can digitalize the accounting. The simple solution was a Excel sheet and done, but this person is very bad with technology, so I was afraid that he would move something in the excel and everything would be messed up. So I build with Google sheets, google sites and Google forms a very simple web application to record incomes and outcomes. Once I did that I start working with Google App Script in order to automatically send emails with invoices and reminders.<p>At the beginning I didn&#x27;t had a clue of what I was doing, just copy and paste code from the internet into Google App Script, and following YouTube videos step by step. (Google app Script is a cloud environment where you can run JavaScript code and connect to Google products via API) With a few experiments I start understanding what&#x27;s going on.<p>I was very satisfied with the result and start looking for other things to do and automate.<p>With the time I start involving html and JavaScript client side code.<p>I became pretty good in those things, and all my learning was basically looking in W3 school and stack overflow every time that I needed to do something new.<p>I did a few web applications like this.<p>When one of my friends ask me if I can help him with some automation and was willing to pay 500usd for something that took me an hour, that rang my bells and I realized that I have something with great potential in hands.<p>To make long story short, eventually I quit my job and start making custom software for small companies.<p>Today I have about 10 softwares that my customers use an daily basis and overall they are pretty happy with my work.<p>The big lesson that I learned: it&#x27;s very hard to learn something new if you don&#x27;t have a clear purpose for it&#x27;s application, and for that reason it was always very difficult for me to learn how to code, until I needed to solve specific problems. (Or the other way to learn is to be in the right environment (collage) where the specific goal is to not leg behind)
jcadamover 2 years ago
I started with BASIC out of books and magazines on an Apple ][e when I was in 3rd grade. My mother was (still is, actually) a software engineer in the aerospace industry so I had a lot of help getting started.<p>Later, I moved on to Amos on the Amiga and then C (Turbo C on DOS at first) on the PC during middle school&#x2F;high school. The web came along at some point during this and I started in on Perl and HTML.<p>Got a proper CS education at college :) and after graduating went into the Army for 4 years (this was back in 2002).<p>After that, got into the aerospace&#x2F;defense industry doing C++ and Ada. Later, moved over to more IC-flavored work mostly in Java, with some Scala and Clojure mixed in.<p>These days, I&#x27;m out of government work doing Clojure all day in fintech.<p>Still learning to program. The meaningfulness of my work has varied over the years :)<p>I&#x27;ve tried to spin up various side projects (both open source and not) but have not been very successful at creating anything with staying power.
commondreamover 2 years ago
When I was in 4th grade and Mrs. Brady let me stay in from recess and play with the TI computer in the classroom. I would copy BASIC programs out of a magazine and get a feel for how they worked.<p>Then in 9th grade I bought a TI graphing calculator and learned BASIC on it, and then in 10th grade Mr. Stanley let me use the serial cable on it which made programming assembly feasible.<p>When I went to college I didn’t even know computer science was a thing, so my starting major was electrical engineering. Someone told me I was stupid for not being in computer science, I said “wait, what’s that?” and the rest is history (for me).<p>I’m not sure if much of what I’ve built is that meaningful, but it has made for a comfortable life for me and my family.<p>Edit: the TI cable was a serial cable, not a USB cable.
stephenpasseroover 2 years ago
RoleModel Software&#x27;s Craftsmanship Academy - A hands on, two months of intensive training, followed by a ~1yr apprenticeship, working with a mentor on actual projects.<p>I highly recommended it: <a href="https:&#x2F;&#x2F;craftsmanshipacademy.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;craftsmanshipacademy.com&#x2F;</a>
zach_garwoodover 2 years ago
I&#x27;ve made a couple small apps for myself, but aside from those, I&#x27;m struggling to think of any meaningful software I&#x27;ve written. The software I write tends to facilitate making someone (but not me) rich, but I&#x27;m not sure if that really counts as &quot;meaningful.&quot;
codingdaveover 2 years ago
I learned by playing with Apple Basic when I was a kid, reading the user manual that came with the Apple ][. I was drawn to it because it was fun... but I then put it away for my teenage years because other things were more fun. I actually got productive with code when I started work after college. I had an IT job, and learned from the top-down, writing scripts to help the work, writing low-code apps, and going deeper and more complex with each new project. It was a couple years later when my job officially changed to being a full-time developer.<p>I&#x27;ve now been doing it for a couple more decades... and I&#x27;m still learning. Learning to code is not something to learn and then do. It is something you learn continually for your entire career.
_gy06over 2 years ago
I&#x27;ve been trying to program computers since I first got my hands on one. Once, when the family PC broke, it came back from the repair shop with a christmas card having been pulled from deep inside the floppy drive, because I was playing at operating it. I was probably 5. I made my first web page in the mid-nineties as a pre-teen. Eventually I got a BS in Computer Science, did lots of full-stack development and went on to manage Infrastructure teams first for Yelp and then for Uber. I wrote key pieces of software at both companies, used to manage probably petabytes of data and provide core functionality to tens - hundreds? - of millions of people. And I managed teams that took that even further.<p>But my earlier forays - writing macro bots on AOL and messing with the eggdrop source code on IRC - were just as meaningful; they hold the same place in my heart, even if they didn&#x27;t have the same commercial success.<p>For me, my love of programming has never been about the value delivered. I&#x27;ve never really <i>cared</i>, in my heart, about how meaningful the product was (which is not to say I didn&#x27;t make career decisions to optimize for that).<p>There are three things that have always driven me.<p>The first is an appreciation for the aesthetic elegance of a finely written program. A good source file is like a poem to me; even the paragraphing is part of the code, and I take great pride in crafting it. I never learned to draw or sculpt, but I poured a lot of what I think is a similar energy into my code.<p>The second is a sort of visceral awe for the speed with which a computer can do something, once I&#x27;ve given it sufficiently elegant instructions. I remember downloading the complete works of Shakespeare off Project Gutenberg in university, and feeding it into a word count program I had written for an intro programming class, and it spat out an answer in less than half a second. Every single word written by the greatest artist of the English language, boiled down to an integer in less than the time it takes a clock to tick. If I hadn&#x27;t already been sold, that moment would&#x27;ve done it. What power!<p>And then lastly, I&#x27;ve always appreciated that outside of academia, programming is just a tool to accomplish some other task. I&#x27;ve worked in multiple industries that I wouldn&#x27;t have known anything about otherwise, because I am skilled operator of a very versatile tool. I have my craft, and I get to apply to a myriad of problems, and that has helped me to build my &quot;ocean&quot; of knowledge an inch deep, which is a source of joy for me.
springtekover 2 years ago
Our aim is to build a profitable company that provides value to our customers, suppliers, employees and community.<p>visit to know more- <a href="https:&#x2F;&#x2F;springtek.in&#x2F;" rel="nofollow">https:&#x2F;&#x2F;springtek.in&#x2F;</a>
diamondapover 2 years ago
I started by reading the source code of Amazon.com&#x27;s homegrown internal customer service tools when I worked there in the 1990s. Those were written in Perl. Then bought a book on C and started fiddling with that.<p>I wrote CGI scripts in Perl for paying customers in the late 1990s, then was lucky enough to move into a small company with some top-notch programmers who taught me to write more reliable, maintainable code.<p>The best lessons I learned early in my career came from having to maintain my own code in production for years on end. You learn not to cut corners and to avoid convenient hacks when you have to maintain the code. You take the long view in your design, aiming to prevent problems you now know how to anticipate. You seek and implement best practices, because dealing with problems in live systems is no fun at all.<p>There&#x27;s an old saying: Always code as if the person who will maintain your code is a violent psychopath who knows where you live. When that person is you, you learn your lessons.<p>The systems I wrote early on helped researches run studies on human subjects. Later systems helped digital archivists preserve materials at multi-terabyte scale.
mysterydipover 2 years ago
When I was little, I lamented that everything had already been invented, I was born too late to really have an impact. Truth is, there are people with problems all around that you might be able to solve. The solution could be a simple script, a standalone app, an online service, an embedded system, or something else. I&#x27;ve done all of those at one point or another in my career. Sometimes it would save someone an hour of work a week. Other times it allowed a capability previously unavailable and completely changed the way people were able to work.
ok_dadover 2 years ago
The meaningfulness is semi random but learning to program is easy, just like learning anything else: put in the time. Spend a bit everyday programming solutions to problems you have.
scombridaeover 2 years ago
Why cast such a judgmental net? I think you&#x27;ll find common skill-building stories between the meaningful folks and the meaningless losers (I fall squarely in the latter camp).
aatd86over 2 years ago
I&#x27;ve learnt to code first year of junior high school, after I had started playing one of the first online MMORPGs (The Fourth Coming) and wanted to create my own.<p>So I took up to download darkbasic (and after that darkBasic Pro).<p>That&#x27;s how I&#x27;ve learnt programming. Just as a way to create things. That&#x27;s definitely a driver for me, the ability to create and put my taste and imagination into things.<p>(I&#x27;ve also learnt to produce music along with sound engineering a few years later, for instance)
david_allisonover 2 years ago
I&#x27;m self-taught. I learned to program making flash games.<p>I started making meaningful software because there was a bug I wanted to fix.<p>I continued making meaningful software because someone sent me a hamper of chocolates a couple of years back.<p>I continue making meaningful software for many reasons, but primarily: I&#x27;m altruistic by nature. I talk and I listen to problems.
orphover 2 years ago
I faffed around forever with lisp and bash and perl, never really getting it. Eventually I read one of these “Learn C++ in 30 Days” books and it just clicked.<p>Today I would recommend getting Copilot and just start typing :)
nonameiguessover 2 years ago
Probably the things I wrote that get the most use are image chipping and embedding components for the Navy&#x27;s Maritime Domain Awareness system, all of the updated security labeling for the NRO&#x27;s first-level ground processing, many of the Jenkins pipeline libraries used for development automation within GEOINT programs, and some ETL scrapers for the APIs of various project management systems to pull into a corporate metrics warehouse.<p>I started out in my mid-30s when I went back to school for Applied Math, originally intending to try for the Army&#x27;s ORSA program, as Applied Math for most of the past 50 years has inevitably involved a lot of computer programming, then simultaneously discovered I liked programming even more than I liked math, and I wasn&#x27;t going to be able to stay in the Army thanks to spinal degeneration, so switched to Computer Science.<p>That said, I&#x27;m still largely self-taught anyway. School only goes so far, and most courses expect you to come in already knowing how to do the basics. That involved the same steps to learn anything else, lots and lots of practice. Some books, mostly the C&#x2F;C++ classics by K&amp;R and Stroustrup, some supplemental courses on specific applications and technology stacks I found in Coursera, and ultimately making my own toy Linux distro with its own package manager and configuration management system after going through Linux From Scratch a bunch of times and getting tired of all the manual steps.<p>Really, though, how to make anything &quot;meaningful&quot; was mostly learned on the job. Other than I guess tiny utilities that are part of a standard GNU or BSD system, there isn&#x27;t a whole lot of meaningful software written by one person. Most of it exists for decades and is worked on by hundreds of people who may not even be alive at the same time. Unless you&#x27;re contributing to some <i>really</i> big OSS project like Linux or Kubernetes, it&#x27;s hard to get that kind of experience outside of being employed.<p>That&#x27;s probably largely due to language choice, though. C and C++ are very mature languages that have been around a long time. No matter what you might want to do with them, chances are a library that provides the bulk of the building blocks you need already exists, thanks to the GNU project, libc specification, OpenSSL, curl, Boost, QuantLib, Armadillo, so many decades of prior work and the fact they&#x27;ve been the major working languages used in universities and research labs. Developers coming up in the JavaScript and Rust ecosystems these days face a more greenfield world where the opportunity to make smaller reusable components still exists, plus the web is inherently a less stable platform than OS APIs, and both of those are less stable than implementing math algorithms that have been known for centuries, so the situation is different there.
d_t_wover 2 years ago
I&#x27;m a founder and one of the point technical people for Kpow (<a href="https:&#x2F;&#x2F;kpow.io" rel="nofollow">https:&#x2F;&#x2F;kpow.io</a>). We&#x27;re a bootstrapped, self-funded, global business in a technical niche.<p>Kpow is a toolkit for Apache Kafka, so basically we build an expert system for experts - it&#x27;s a lot of fun. We are very, very delivery focused. The idea came from my own experience through the past 10 years building things with Kafka.<p>I like to think I&#x27;m a fairly effective programmer. The biggest shift in my productivity came 15 years into my career when I moved from Java to Clojure for delivery. It&#x27;s not for everyone, but it certainly changed my world.<p>If I am a good programmer it&#x27;s because I started to copy my older brother who was interested in programming back in the 80&#x27;s when we had a Spectrum 48k and I just didn&#x27;t stop.<p>Since the age of 6 I have written or read programs almost continuously except for the period between about 10-18 where I played games and hung out with friends instead.<p>At times I have been a terrible programmer, particularly when encountering a new languages and exploring ideas. That doesn&#x27;t bother me because I know in time I absorb details, accumulate, and polish my own ability to delivery.<p>Behind it all though I enjoy programming and have stuck with it. I think that&#x27;s the main thing. It takes time. I don&#x27;t believe there are any shortcuts.<p>Keep challenging yourself, don&#x27;t sit on the thought that &#x27;My Language Is The Best&#x27;, that&#x27;s the respite for programmers who have stopped. You&#x27;re only as good as your last three years so basically ignore any boomers on the net with opinions.<p>The best programmers I&#x27;ve worked with don&#x27;t have blogs, don&#x27;t write books, don&#x27;t speak at conferences. They&#x27;re too busy creating things, often quietly, often in not particularly glamorous settings.<p>It may be apocryphal but supposedly Steven King says the best way to be a good author is to read and write a lot of books, I think that applies to programming.
labradorover 2 years ago
Books and trying things mostly
f1shyover 2 years ago
I started programming when I was 7, in basic (very little things). In the school we had Logo when I was 8, I found that boring. When I was 12 I was programming ASM in the Z80. Later I learned pascal in the first year of secondary school, and C one year later. I was attracted to programming because I suck at arcade games. When all my friends where playing wanderboy or whatever, I was programming things. I enjoyed being able to create what my imagination wanted.<p>I learned a lot by trial en error, and I tried to get my hands in whatever document would help me to code better. I remember getting from a BBS a copy of the coding style of Linux. I found extremely insightful.<p>The good thing of learning to program in the 80s, is that some things that later became (stupidly) prohibited, were all in trend: RAII, normal naming of variables, dynamic typing... later the people when to stupidity and insisted in declaring all variables at the beginning of the function, naming conventions like hungarian notation, and strong typing... not everything is reverting to the normality.<p>Then in the university I learned C++ (C++98) and &quot;OOP&quot;. I thought I knew what I was doing, even worked 1 year producing real software for automation of radio broadcasting automation (mp3 was still not a thing, we had all the music in big discs --4GB! :) and played form there). Also developed a presence server for Nextel Sprint, and a geolocation application, based on signal strength (when cell phones did not have GPS). Among many other applications, for billing, alarm handling, protocol analysis...<p>UNTIL: in 2010 I came across SICP. It was like &quot;all you ever wanted to understand about SW engineering and nobody told you.&quot; That lead me to read the Lisp books like &quot;Practical common lisp&quot; and I understood I had no idea what OOP was really... Because how I learned to code, I always used already the &quot;wishful thinking method&quot;. I tend to write the programs so that it is almost the algorithm I want to implement in psedo-code, and the go ahead programming the functions that I assumed exist, again with the same method. Each iteration in a new set of files, which represents a deeper (less) abstraction, until I get to system or library calls. Sometimes I made a wrapper for a library, so I start parts bottom-up.<p>FF another 10 years, working in a different country and industry, I see how important is to not be smart while writing code. Use KISS principle. More and more the idea of &quot;write psedo-code&quot; takes importance...<p>And I see how some industries, countries, or even continents, for some estrange reason, are 30 years behind in computer science. I see constantly people where I work defining all variables at the beginning of the function, using kind of hungarian notation, (no kidding, loop variable named nmp_CntIdx_si32), using inheritance for absolutely everything, the concept of &quot;has a&quot; does not exist, they insist in &quot;is a&quot; abstraction. I&#x27;ve seen inheritance chain of 14 classes, one after another, to make a Kalman Filter, which inherits from std::vector. Last but not least, they make every single function a template, because &quot;you do not know if later you want to add the ability for other type&quot;. Mind you, is a BIG company, making &quot;safety critical&quot; software...<p>All that to say: yeah, what does &quot;meaningful&quot; means after all. I find more meaningful my beginning writing automation SW for radios, as the stupidity I do today...
pedalpeteover 2 years ago
I am self-taught, and I think the important thing was that I kept learning not because I knew what I wanted to learn, but because I knew what I wanted to build, and then had to learn the steps to get there.<p>TLDR: Find a problem you want to fix, or people with a problem you&#x27;d like to help, and then learn how you can help them, and then learn the tech that needs to be implemented to solve that problem.<p>I will say, I had some early success, and I think that actually hurt me rather than helped me, as I had this huge ego about the things I was able to do with code. I wish I was more open to learning earlier, but I didn&#x27;t have the university background of knowing how to learn, and basically escaped high school as soon as I could, so learning didn&#x27;t become a thing for me until much later in life.<p>Here&#x27;s my story...<p>I was very fortunate to have gotten into programming because a start-up I had worked at as a PM told me the way I wanted to tackle a project was &quot;impossible&quot;. We were doing acoustic matching of music, and needed a large library to train on (back in 2005 or 2006).<p>I indexed MySpace &quot;hidden&quot; urls to get access to the music library and built a pandora type service from that. It didn&#x27;t work great, but there was a huge music festival coming to town, and so I used the indexing code I had built to was able to build a concert search engine because I had access to the data (<a href="https:&#x2F;&#x2F;techcrunch.com&#x2F;2008&#x2F;10&#x2F;27&#x2F;hearwhere-lets-you-discover-live-music-in-your-neighborhood&#x2F;" rel="nofollow">https:&#x2F;&#x2F;techcrunch.com&#x2F;2008&#x2F;10&#x2F;27&#x2F;hearwhere-lets-you-discove...</a>)<p>From there, I was talking to a friend and his wife about the boring horrible data entry job his wife was doing, and they both worked for the same company. I explained that a computer could do the job better and faster, and they introduced me to the CTO to explain my thoughts. I explained it to him, and he said &quot;I&#x27;m not sure how you think this will work, but we&#x27;ll pay you to make it&quot;, so I built an ML system for them, and they went from having (if I remember correctly) 12 data entry people full-time to the job being 2 people about 5 hours a month. The people were much happier not having to do the painstaking job they did before. A few of the other data people got new jobs in the company and were much happier, I hope those that left also found better work.<p>Then I tried to teach computers how to cook and failed miserably, I worked at a few startups that went no where.<p>Then I took over an existing &quot;metaverse&quot; project (pre-metaverse - 2015), and made it function better so it could be usable to a wider audience. Ayvri (<a href="https:&#x2F;&#x2F;ayvri.com" rel="nofollow">https:&#x2F;&#x2F;ayvri.com</a>) is loved by the paragliding community, and a few of our API customers, but we&#x27;re shutting down the consumer facing portion as the cost of operating for consumers is more than we are taking in as we&#x27;ve grown. We have a few companies vying to taking on the tech.<p>Now, the team that built Ayvri are working on improving sleep for millions with a headband that monitors sleep state and uses auditory stimulation to improve the neurological function of the brain during sleep. <a href="https:&#x2F;&#x2F;soundmind.co" rel="nofollow">https:&#x2F;&#x2F;soundmind.co</a> - this is the project which I believe has the most impact, and is REALLY fun to work on. Though, I don&#x27;t work on the tech stack anymore, the engineers I work with were always better than I am.