95
34 Comments

What tech stacks are indie hackers using for their products?

I asked several indie hackers about the tech stacks powering their businesses. Check out the technologies, methods, and thought processes behind the products they've built below.

Screencasts for Building Products without Code

👤 Ben Tossell, founder of 🇬🇧 newCo ($24,000/mo)

My tech is super no-code:

  • Webflow: landing pages (and I actually use this for password-protected "members" pages)
  • Typeform: membership submissions (and payments)
  • Stripe: payment processing
  • Airtable: my database
  • Zapier: to connect everything (automatic emails, paid members, sending receipts, sending new tutorials, adding to the database, etc.)

I chose this route to start off because I wanted to validate that newCo could viably make money before I committed. In my business I teach people how to build startups without code, so it aligns perfectly with my audience.

Customized Pet Supplies

👤 Charlie Gearside, founder of 🇦🇺 Petflair ($15,000/mo)

As an e-commerce business, reliable transactions are our main priority. So we've built loads of custom functionality upon a highly customised Shopify storefront.

We use jQuery to handle customer data before a transaction, then use Zapier after a customer goes through Shopify and pays. We've found it pretty reliable, and the trade-offs of speed over reliability were worthwhile, especially when we were coming off Kickstarter.

From there, the operational side of our business is complex, and people's pet photos are handed off to outsourced designers, emails, and eventually our factory. For this, we use a mix of custom MEAN stack and Zapier.

Professional Podcast Hosting and Analytics

👤 Justin Jackson, co-founder of 🇨🇦 Transistor.fm ($30,000/mo)

When choosing our tech stack, we wanted to remove anything that would slow us down. Ultimately, the only thing that really matters is getting stuff built, deployed, and into the hands of customers.

For Transistor.fm we're using:

Ruby on Rails has entered it's "maturity phase," which means it's no longer the "hot new thing." But that's ok with us. There are still tons of resources for Rails, it's widely supported, and it's stable.

Also, when we're ready to grow, I know dozens of talented RoR developers that we could hire. Hiring is a key element a lot of folks don't consider when they're choosing their tech stack.

Simple CRM for Small Businesses

👤 Tyler King, co-founder and CEO of 🇺🇸 Less Annoying CRM ($217,000/mo)

Our back end is a pretty plain PHP setup: PHP7 + MySQL + NGINX hosted on Amazon AWS. As we grow, it becomes a bit more complex (sharded databases, etc.) but we started with the most basic thing possible and only change it when there's a real problem that needs to be solved.

The front end is now in React, although we started with a pretty simple jQuery setup. I've heard React described as "10 times as much work for a 20% better user experience", and I think that's about right (maybe not 10x, but probably 2x). So in my opinion, something like React makes sense once the product is polished enough that small improvements matter, but I wouldn't want to hack together a prototype with it.

I'll admit that a part of me is jealous of companies that use managed services for their whole back-end (Firebase, etc.) because it would remove a significant amount of the devOps work we do, and that's one of my least favorite types of work. At the same time, being totally reliant on someone else's proprietary tech seems… risky. So for now I prefer to stick with commonly supported open source technologies, but I do sometimes think that the grass might be greener on the other side.

At the end of the day, our users don't care what tech we use, so I think it's a mistake to get too caught up in the holy war between different languages and frameworks. I already knew how to use PHP before starting Less Annoying CRM, so that was the right choice for us. But if I'd been a Rails, Node, or Python developer in my previous life, then it would have made more sense to use one of those technologies instead.

API for Building Scalable Web Scrapers

👤 Dan Ni, founder of 🇺🇸 Scraper API ($131,000/mo)

For Scraper API, I knew early on that it would be important to be able to scrape JavaScript rendered websites. Puppeteer is quickly becoming the gold standard as far as headless browsers go, so Node.js was the obvious choice for our back end. I have nothing but good things to say about Puppeteer so far — its a well-thought-out library that is being very actively developed, which is something I always check for before relying on an open-source project.

On the front end, we use HTML, CSS, and mostly vanilla Javascript with a bit of jQuery. A lot of startups are quick to reach for some of the new popular frameworks like React and Vue.js. I tend to think these are generally overkill unless you are planning on having a fairly sophisticated front end.

Poshmark Automation Tool

👤 Jordan O'Connor, founder of 🇺🇸 Closet Assistant ($16,000/mo)

I'm an advocate of two things when bootstrapping: do it for free, and don't reinvent the wheel.

Now, that's not to say you shouldn't code things from scratch, or that 'free' means bad quality. Actually it's quite the opposite. There are plenty of amazing platforms out there that will give you a solid foundation at little-to-no cost while giving you the assurance that your product isn't going to go down when you need it to perform the most.

My product, Closet Assistant, is a front-end 'plugin' (like Intercom). It pops up on the retail website Poshmark and automates some processes for the users. It saves them time, and potentially makes them more money.

It runs on a serveless tech stack because it's mostly front-end code, with a sprinkle of back end for things like payments and task automation. Here's what I use:

Every single one of these platforms costs me $0 to use.

Github Pages is super easy to use if you're a developer. Jekyll is a lovely static-site building engine. The reliability and flexibility is reassuring. Cloudflare is also incredible. It allows you to have secure pages and will protect you from DDoS/high traffic scenarios (Github Pages won't, necessarily).

Webtask is something I had never heard about until making this product, yet it's been the backbone of the project. For free, you can have a Node.js back end that allows you to receive GET/POST requests, and listen to webhooks. I use POST requests for creating new subscriptions, ending subscriptions, and updating credit card info. I use webhooks to disable accounts if the user hasn't paid, or to send out an email when someone converts their free trial. Oh, and it's already hosted and ready to go (with an easy npm integration). You just provide the code and they give you a URL. Pretty awesome.

Firebase is perfect for bootstrappers, because it allows you to quickly create new users, and the NoSQL database is incredibly easy to manipulate and use. I use the database to verify that users are paying, and keep track of settings/stats used in the app.

Stripe is a given. It's the most flexible and useful payments platform out there. Once you get your head wrapped around the API and their webhooks, it's very easy to build features that would be a massive headache on other platforms.

I use Google Analytics mostly because it's easy to integrate (and it's free). I have a separate tag for the website and for the product. It lets me track how and when my users are using the product.

It took me about a month to learn how to develop with these platforms and integrate them together. But, when in harmony, it's a killer tech stack that will allow you to scale at little-to-no cost.

Kanban Board WordPress Plugin

👤 Corey Maass, founder of 🇺🇸 Kanban for WordPress ($1,100/mo)

WordPress plugins, all day long.

Many wantrepreneurs/micropreneurs/solopreneurs advocate starting with a WordPress product. They're right for many reasons. You don't need a lot of code or overhead. The product is distributed so you're not worrying about your server going down in the middle of the night. You can use WordPress's platform to sell your plugin. WordPress site owners are used to upsells.

But here's the secret sauce. WordPress site owners are constantly browsing the plugin directory and trying plugins because they're free and because it feels productive. They know they should be writing a blog post or managing their Google ads, but instead, they're clicking "install" on random things because the barrier to entry is so low. So as long as you can create a plugin that people might want to try, you've got traffic. Now all you've got to do is upsell them. :-)

Service for Finding SEOs or Digital Providers

👤 John Doherty, founder of 🇺🇸 Credo ($32,000/mo)

I believe in building a minimal product while bootstrapping. Anything you do that does not directly map to revenue is a waste of time when you're getting going. You might be a great developer that can rewrite anything in the latest JavaScript library, but if you're not monetizing then you have a hobby and not a business.

My platform is built on WordPress, both the front end and the back end. There is some custom development done to make different systems talk to each other and crons to clear out things daily, but mostly it is WordPress with Drip as my marketing automation and Mandrill for my transactional emails.

I've considered building a fully custom system, and some day that might be the right solution. But right now, with my back-end development skills lacking, it makes the most sense to keep it on a tech stack I know so that I can fix bugs myself without relying on an external developer.

Daily Planning App

👤 Malcolm Ocean, founder of 🇨🇦 Complice ($2,600/mo)

Basically the MEAN stack: MongoDB, Express, AngularJS, Node.js. I really like using JavaScript on both the front end and the back end. A new synchronization module I recently wrote to make the app work offline makes extensive use of this by having a shared file for handling the merge logic between different kind of objects. (I'm planning to open source it; when I do it'll probably be at github.com/malcolmocean/kitchensync, but that URL is empty at the moment.) Beyond that explicit benefit, it's nice to only have to think in one language. MongoDB pairs excellently with this, as does AngularJS.

I've heard lots of people say that Mongo doesn't scale very effectively, but fortunately the nature of how Complice works as an app is that it's usually tracking small lists of things (eg "what am I doing today?") not massive ones (eg "what are literally all of the tasks I've thought of doing in the last 5 years?") and there hasn't been that much of a need for normalization, so it's worked well for me.

To be honest, I didn't think about it that much when I got into it. I hadn't worked much with databases before building this app, so I didn't have a lot to compare it to. I liked the ODM that is Mongoose because it let me mostly ignore how the database actually stores things and just treat my documents like saveable objects.

All in all I'd recommend my stack to anyone whose main innovation is in the UI or other interfaces. If you want to do something that's very technically impressive or efficient, you might be better off with something else.

Cloud-Based Node.js Hosting

👤 Martin Lev, founder of 🇨🇦 opeNode ($300/mo)

I'm mainly using Node.js for the back end, MySQL for most of the relational data, and Vue.js for the front end.

To record documents and logs I'm using MongoDB, which has worked well so far. I use crontabs with basic JavaScript scripts to crunch data and automate as much as possible.

For caching I also use Redis.

For email I recently started to use SendGrid.

I worked extensively with Ruby on Rails in the past, so I recently started to play with Elixir and the Phoenix framework.

Premium WordPress Updates

👤 Jack Slingerland, founder of 🇺🇸 Kernl ($1,300/mo)

Kernl at its inception was a side project to test out some new technologies. Back in 2015 Node.js was starting to get very popular and MongoDB was starting to gain maturity, so I decided to use those for Kernl's main backend technologies. In hindsight using Node.js and Mongo has helped me iterate and respond to customer needs quickly. At the time I didn't really know all that much about them and was looking to learn.

Aside from those choices I decided early on to use AngularJS 1.x for the front end. I knew that if I wanted to start and finish an MVP of Kernl I would have to be using at least some technologies that I was familiar with. Three years later the Angular code base is starting to show its age, but the effort to rewrite into something more modern isn't worth the cost.

If I were to start over today I don't think I would change anything. Kernl's use of the MEAN stack has helped lead it to success even with the non-trivial scale it operates at. For people starting a new project today, understand your goals before choosing a technology. Is your goal to learn something new? Then choose that hot new framework or language. Is your goal to build a product as quickly as possible? Maybe you should stick to whatever language or framework you are already an expert in.

Practical HTML/CSS Course

👤 Dmitry Belyaev, founder of 🇳🇱 Frontloops (acquired April 22, 2019)

The only entry point of Frontloops is the landing page where you can subscribe for the email subscription, so I wanted to make it really simple. I decided not to go with any trendy framework but just built it with vanilla JavaScript, HTML and CSS.

On the back end it is Node.js because I had to create an API for sending emails and a couple of action buttons inside them (like getting the next task or upgrading to the full version).

My professional background is in front-end development, so it is much easier to get things out quickly when you are already good with the code syntax and best practices.

While the product is relatively small, there was a space for learning from my mistakes. What I learned is that you should definitely try your best to make the code of your MVP as simple as possible, but don't be too lazy with that. You don't want to find yourself refactoring your code the day after you wrote it just because you didn't spend half an hour researching possible use cases for your features.

Property-Management Platform

👤 Michael Meyer, founder of 🇺🇸 Propertyments ($2,000/mo)

Propertyments is built on ASP.NET Core/C# back end, SQL server database, JavaScript/jQuery/Bootstrap front end, all hosted on Microsoft's Azure platform-as-a-service.

I primarily chose this stack because I professionally develop enterprise applications using the same and wanted to get the MVP out as quickly as possible with a good foundation that I could continue to build off of. I think this is the most important consideration when selecting your technology: what do you currently know? There are many ways to solve a problem — start where you're strongest and build off of that.

This is a mature stack that has good support from Microsoft as well as the open source community on the back end, plus a full-featured Stripe library for the rent collection we do. The front-end libraries are endless. There are an abundance of .NET developers when it's time to scale up development and the Azure platform is built to scale automatically as the need arises. I want to be as hands-off as possible when the business really starts to pick up, this setup allows me that freedom.

User-Flow Patterns for Product People

👤 Ramy Khuffash, founder of 🇬🇧 Page Flows ($5,500/mo)

For Page Flows I'm using Django/Python on the back end with a PostgreSQL database and jQuery with a bit of Vue.js on the front end.

The tech doesn't really matter for a members-only media/content business like Page Flows, so going with a fancy new technology would have been a distraction. I just went with what I knew.

So far, I have no regrets, as I can prototype features and iterate quickly. Once the product is at the stage where it's more defined, I'll probably work to improve the user experience with a more dynamic front end.

I'd recommend sticking with what you know even if it's less fashionable, unless your priority is becoming a more employable software engineer.

Friendly Appointment Scheduling

👤 Chris Tan, co-founder of 🇨🇦 CozyCal ($3,000/mo)

Our tech stack is geared towards simple, friendly-to-use tools.

Switching to Vue.js has been the best investment we've made in improving the depth of our product. I'm very pleased with how easy it is to organize a project when using Single File Components.

The Vue style guide is another strong reason to pick this library. The Vue vs. React debate seems to be taking on steam this year. There is no "right" answer. However, I think Vue falls into the camp of people who might like Python: "There should be one — and preferably only one — obvious way to do it."

On the server side, we run Tornado on Python 3 with NGINX in front of it as a proxy. It's been running on a $5/mo instance at Digital Ocean for nearly two years with no problems.

For our database we use SQLite and Peewee as our ORM.

Other notable services that we like:

Tarsnap for backups. Ridiculously good for the value they provide. They should charge more :). And finally, Sentry for error reporting.

Printable Wedding Place Card Maker

👤 Cory Zue, founder of 🇺🇸 Place Card Me ($2,400/mo)

Place Card Me is built on a pretty standard Python/Django stack: Nginx web server, Django app, and PostgreSQL database. It's a tech stack that I already had a good amount of experience with and knew I could stand up and work in efficiently, and also one I knew would be long-term sustainable and scalable. I was very glad to have made that choice as I have been able to leverage a lot of my prior experience, knowledge and tools — and to bring learnings from Place Card Me into my other projects.

While we all love exploring new technologies, your core stack — in my opinion — is not a place to do that — especially if you're like me and enjoy building many different projects. If, instead, you are consistent with your stack across projects then you also will find consistent ways to handle all the other peripheral things that come up on every project like error monitoring (Sentry), asynchronous and scheduled tasks (Celery), and even things as simple as sending email (Mailgun). These then all come with great economies of scale. It's important to keep in mind that it's not just your web application you need to figure out, but every other peripheral service associated with that application — a list that only grows over time if you are successful.

At the same time, I always recommend trying one new technology for each new project. This will keep yourself current, scratch that itch for learning, and continually expand your resume. For me and Place Card Me, that new piece was learning React to build the front end. It was another choice that ended up working out really well and I now use React regularly in many other projects. Prior to this project my JavaScript chops were still in the pre-package-manager jQuery wild west, but taking the opportunity to learn and build a modern JavaScript front-end from scratch has really changed that. Not only has it led to a much more maintainable codebase, but it's also been a great skill I can bring to other projects and freelance work.

Synchronize Xero Invoices and Bills to Calendars and Slack

👤 Rikki Pitt, founder of 🇬🇧 InView ($100/mo)

In order to get my idea off the ground and a proof of concept working, I opted to use Ruby on Rails to produce InView. I feel it's still a relevant and very powerful framework to progress quickly and easily from a basic app right through to a fully fledged SaaS product without having start again in another system.

Granted, it's not as fancy as some of the more modern front-end JavaScript frameworks available, but it's often hard to beat the sheer simplicity of a RESTful/CRUD application.

Heroku is my application server of choice and I already had a set of tooling and deployment systems in place to streamline a TDD/BDD approach to the development process — something to bear in mind if you're about to embark on a new project. Do what comes easiest, get building, and experiment with your idea quickly in a way that you'll be comfortable managing going forward.

Automated Dependency Updates

👤 Grey Baker, founder of 🇺🇸 Dependabot (acquired by GitHub on April 5, 2019)

Dependabot is built using Ruby on Rails, with PostgreSQL as our main datastore, Redis for caching, and React on the front end. We deploy to Heroku. As such, pretty much the whole stack is plain vanilla.

That's unashamedly by design. I had a decent amount of experience working with that stack and there wasn't a compelling business reason not to use it for Dependabot. I was more interested in getting the service working than experimenting with new technologies, so stuck to what I knew. I'd advise anyone else building a business to do the same — you'll face plenty of other challenges along the way, after all.

One interesting part of our stack is Heroku. Dependabot actually has really complicated platform requirements — every day we need to spin up thousands of isolated environments to evaluate our users' dependency files. Not only does Heroku handle that easily and quickly with its one-off dynos, the price has never been above 10% of Dependabot's revenue. It's an area I'm extremely pleased we've not yet had to innovate on.

WooCommerce Plugins

👤 James Kemp, founder of 🇬🇧 Iconic ($9,000/mo)

As I run a WooCommerce plugin business, my tech stack is based around PHP.

I use Local by Flywheel to spin up local WordPress installations. It's great as you can create "blueprints", which are pre-configured sites with themes and plugins, as a base.

My editor of choice is PHPStorm — a tool I couldn't live without. Using it gives me the confidence that my code is always as good as it can be. On top of that, the Xdebug integration saves so much time when debugging.

All of my plugins run on Gulp, Composer, npm, Sass, and jQuery. I've built a number of custom npm and Gulp scripts to automate a lot of my workflow, like compiling Sass, deploying plugins, updating version numbers, etc.

My stack is constantly evolving. I'm always open to try new things; I'll admit I already have my eye on VS Code!

Want to see more round tables?

I'll be aggregating knowledge from from successful indie hackers once a week on all sorts of topics, like:

  • how they found their first customers
  • their strategies for growing successful social media accounts
  • how they came up with their business ideas
  • etc.

👉 Click here to subscribe.

  1. 1

    There is a lot of diversity in this list.

    This shows that the stack is not the most important part, so I would just go for the time-tested technologies that allow one to move fastest.

  2. 1

    Nice tools! I mainly use Figma, Trello, Stripe, Webflow, and Google Forms.

  3. 1

    That's fantastic, super helpful. Thanks for your sharing.

  4. 1

    Gold Post. Being a non technical person, I learnt so many things just by reading this.

  5. 5

    I love Tyler's approach to "Less Annoying CRM" so was very eager to read his bit. I was, however, a little surprised about his comment "... something like React makes sense once the product is polished enough that small improvements matter, but I wouldn't want to hack together a prototype with it."

    How are other indies feeling about this? I am extremely biased towards React and was curious to hear what other thought about spinning up prototypes with React. For me that has worked quite well so far?!

    1. 1

      I agree. I wouldn't/don't use react in early stages. I love react, but it adds unnecessary time and complexity when you are just trying to get something working. A buttery smooth frontend can come later.

  6. 1

    I appreciate for your time sharing with us the tech stacks used by indie hackers in their products. It's a valuable knowledge!

  7. 2

    Indie hackers, who are individuals or small teams building and launching their own tech products, often rely on a variety of tech stacks depending on their specific needs and preferences. Here are some popular tech stacks commonly used by indie hackers:

    Full-stack JavaScript: Many indie hackers choose JavaScript-based tech stacks due to their versatility and extensive community support. This stack often includes Node.js on the backend, a frontend framework like React or Vue.js, and a database such as MongoDB or PostgreSQL. This allows for unified development using a single programming language.

    Ruby on Rails: Ruby on Rails (RoR) is a popular web application framework known for its simplicity and developer-friendly nature. It offers rapid development capabilities, making it a suitable choice for indie hackers looking to quickly build and launch their products. RoR typically incorporates JavaScript and utilizes a database like PostgreSQL.

    Python and Django: Python is a versatile and widely adopted programming language. Indie hackers often leverage frameworks like Django or Flask to build web applications using Python. Django provides a robust set of tools and an efficient development workflow, making it an attractive option for indie hackers with Python expertise.

    MERN Stack: The MERN stack combines several popular technologies: MongoDB (NoSQL database), Express.js (backend framework), React.js (frontend library), and Node.js (JavaScript runtime). It offers a JavaScript-based end-to-end solution for indie hackers, allowing them to develop both the frontend and backend components of their applications.

    LAMP Stack: The LAMP stack has been a longstanding choice for indie hackers. It consists of Linux (operating system), Apache (web server), MySQL (relational database), and PHP (server-side scripting language). This stack is known for its stability, scalability, and wide adoption in the web development community.

    Serverless Architecture: Indie hackers seeking to reduce infrastructure management overhead often turn to serverless architectures. Services like AWS Lambda, Google Cloud Functions, or Azure Functions allow developers to focus solely on writing the application code while relying on cloud providers to handle the underlying infrastructure.

    It's important to note that the choice of a tech stack can vary depending on the specific product requirements, technical skills of the indie hacker, and the ecosystem they are comfortable working within. Indie hackers often prioritize technologies that enable rapid development, ease of use, and efficiency, while considering factors such as community support and scalability.

  8. 4

    Awesome list!

    Though, not having a single mention of Java is not exactly great [indie] market demand validation for our Java developer tool :-) (https://BugJail.com)

    Not that our tool is aimed for indies, or that Java's unpopularity among indies came as surprise... But what I never fully understood is why Java, as the most popular language overall, is so damn spectacularly unpopular among indie devs?

    1. 6

      I think it’s a few reasons. This is my observation

      • Java is widely popular since it is used a lot in enterprise development. That’s pretty far from indie development.
      • Java is thought in almost every CS degree program. Indie devs come from so many different backgrounds and not all include a CS degree
      • Java is verbose and hard to prototype with compared to other languages. Indie hackers prefer fast prototyping so it makes sense for them to go another route.
      • A lot of indie devs are self taught. Most self taught devs go down the Javascript route due to the accessibility
      1. 2

        Java is verbose and hard to prototype with compared to other languages. Indie hackers prefer fast prototyping so it makes sense for them to go another route.

        Exactly!

      2. 1

        Great points, thanks. I never thought about the CS background vs indies being self taught aspect.

        But can you elaborate on the "Java is hard to prototype with"? Why is that?

        1. 4

          Java is verbose as a language. It’s a lot easier to spin up a backend server with node than it is in Java

    2. 4

      I think some of it has to do with the coding culture that still prevails in much of Java land. Whenever I'm doing something on the Java backend at work I'm struck by the degree of indirection in Java. Data is wrapped in classes, which are generated by a builder and on and on.

      Basically I think there is an overuse of patterns and premature abstractions in Java. This makes the code hard to understand/follow and I constantly find myself jumping between files. It also adds a lot of code you wouldn't need without these patterns. More code == more time to unravel it.

      I actually think it's a cultural thing, because I haven't seen this to the same extent in C#, a language that is similar to Java.

      Unfortunately simplicity doesn't seem to bee an ideal in either of these languages. That's why I prefer Python, JavaScript/TypeScript or Elixir. I also think ML inspired, functional languages like F# and OCaml have saner/fewer patterns, but I haven't looked into those enough.

      1. 1

        I think you may have found the root cause of Java's unpopularity among indies..

        The "culture" of heaviness and over-engineering is undeniable, and while it is not exactly the fault of the language itself, it does give Java reputation that is exactly what indie developers want for building MVP, except the opposite.

    3. 1

      Well, JavaScript can be used on the front- and back-end right? Biggest bang for the buck if you're a self-taught programmer, in my opinion. I used to work for a startup that had Java on the back-end, so it's totally doable, especially since some of us Indie Hackers use Python successfully.

      1. 3

        I used JavaScript professionally for years and still found Ruby, PHP and now Elixir better choices for a backend as an indie.

        The reason is mostly about productivity rather than performance or other shortcoming of JS. Great MVC framework backends like Rails, Laravel or Phoenix just make it a lot faster to get things built and that's the most important thing when starting out.

        Java, as traditionally used, is pretty far away from the ethos of Rails and later systems inspired by it. For whatever reason, there seems to be a culture of architecting "entreprisey" overly complex OO monstrosities in most the Java world.

        1. 2

          Right. I know JavaScript but I use Python for the back-end. And I completely agree with you re: Java. It’s the most popular language as of now, but it’s also losing popularity.

          But just to clarify, I wasn’t talking about people like us who have professional experience programming. I was referencing those that are self-taught, and it seems logical to learn JavaScript if your goal is to ship as soon as possible.

          1. 2

            Yeah, I agree in terms of not spreading yourself too thin (especially if you're learning your first language!)

            FWIW, though I've had a good amount of professional programming experience (in Beijing and then SF), I was self taught! At the very beginning I was running a non-technical business and slowly learning to program from messing around with a WP blog on nights and weekends. That lead me to learn HTML, then CSS, then a bit of PHP and finally a FT role using JavaScript, which I later delved into much more deeply.

            For all the hate it, gets, I still think both WP and PHP are a great entry point for beginners, especially now with the existence of Laracasts. If you're building a site that's focused on content and marketing, you really don't need to learn that much JavaScript that soon. I had a front-row seat watching a good friend's content site grow from tiny to over 1MM uniques a month and more MRR than I've ever reached. It was a very basic looking site (with great content) and powered by ugly PHP code that was deployed via drag & drop into an FTP gui client.

            1. 1

              Nice! WP as in WordPress?

      2. 2

        JavaScript working on front- and back-end is clear explanation for JavaScript's popularity, but not for Java's unpopularity..

        This list had 2x Ruby on Rails, 2x Python, 1x PHP, 1x .NET back-end, all of which require using different language for front-end, just like Java.

        1. 2

          Hey Henri 👋

          I suspect the jdk download, path wrangling, ant, maven, compiling, EJB, lack of rapid dev options, general market share, lack of innovation and probably generics from 1.5 onwards are key reasons java fell out of fashion. Oracle surely didn’t help at all.

          The world cares about Mobile - java doesn’t offer anything here, or does it? The world cares about the web. I can’t even remember the names of the last two promising java frameworks I used. The world cares about UI and swing looks like it’s from the 90s.

          I like the quick turn around times of ruby, and JS and the fast and lose approach to code :) That said, elixir is my serverside tool of choice these days.. It’s just different and kinda fun IMO.

          1. 1

            The world cares about Mobile - java doesn’t offer anything here, or does it?

            Android?

            The world cares about UI and swing looks like it’s from the 90s.

            It actually is from the 90s :) But did you know that JetBrains platform (IntelliJ IDEA, WebStorm etc) is made with Swing and looks fully modern.

            But yeah, reading all the reasons in your first paragraph, i can't really disagree; there are tons of annoyances and drawbacks with Java..

            1. 1

              Android! Of course. Totally forgot about that 🤦‍♂️😂

              Re: IDEs yeah, I know they’re Swing, or at least when I used them last they were. That was back around 2011ish.. I didn’t much like either of the LAFs it offered. But at the time i was still using emacs in a terminal for most things.. 😬

  9. 2

    My technology stack at the moment:

    Image of my tech stack

  10. 1

    I have built a number of indi projects and my one recommendation would be to create a real backend instead of trying to do all the business logic on the frontend and use firebase or something similar as a db. Currently I am working on ClickStack so that creating apis are a breeze.

  11. 1

    I think it's great that you suggest WebFlow -- even very technical teams use it to separate out marketing pages from the actually app. We do it for AskHumans.io --- everything before the login is WebFlow which makes tweaking pages easy without doing GitHub pull and push

    1. 1

      Completely agree webflow for marketing pages is a MUST! We do it for ClickStack

  12. 1

    Great content! Just subscribed

  13. 1

    Great list and its interesting to see that most people have gone with what they are comfortable with or off the shelf than trying something that is currently trendy.

  14. 1

    Excellent read!

    About my own stack.

    For plugins I use vanilla JavaScript as I can then port it to everything. For future versions I'm looking at Svelte as it compiles and removes the original framework, it's very performant framework which fits my use case.

    For client portal I wanted to go with Node / React / GraphQL but I found I simply didn't have enough experience and kept wondering what everything was doing under the hood. So eventually I went with what I knew, PHP + MySQL, super simple, but got it up and running in about a week and know exactly what happens where.

  15. 1

    Awesome post! Thank you for that! :)

Trending on Indie Hackers
Yayy! Made my 2nd sale in one month 43 comments Need feedback about the landing page 22 comments Help me positioning my SaaS product 20 comments 🤯Blown Away, Everyday. 20 comments Productized service: Got my 1st client (€2500/m) with 100% upfront payment 17 comments Roast My Product Landing Page 13 comments