
Ask HN: What's your stack for your side projects? - uptownfunk
Looking to build some simple SaaS ideas out, trying to figure out what tools are currently in use and how I can get started without wasting time on learning things I don&#x27;t need or that are obsolete or that I won&#x27;t use. Tired of being that guy who has ideas but can&#x27;t make them a reality.
======
p0d
Been using same stack for 10 years; php, mysql and javascript. A friend calls
it ghetto coding however this unruly stack could have paid for my house.

Most side projects are about helping people who think pancakes when you talk
stack. This is my advice for what it’s worth;

 _Solve a real problem._ Don’t create something you can’t support. _Be nice to
people, they are the ones who will pay you._ Recieve input but ignore people
who tell you work is rubbish (we’ve all been there).

Good luck.

~~~
whttheuuu
This.

Your users don't know or care about what stack you use as long as it solves
their problem.

My most profitable side projects also happened to contain the worst code.

I think developers can be categorized into 2 types - engineers and
entrepreneurs.

The first type is obsessed with the programming and technology aspect of
things (won't ship until the code is perfect, clean and optimized).

The second type just wants to ship the damn thing, close the deal, and secure
the money.

------
mindcrime
Don't worry about what's "obsolete". Worry about what you can use to achieve
your goals. If you want to build webapps on an AS/400 using RPG/IV, then go
for it. This industry is already way too "fad driven" where everybody is
walking around thinking that only the latest, shiniest, newest, cutting-edge,
"whatever" matters.

That's not to say that some tech doesn't have more merits than others, but you
don't necessarily have to worry about always using "the cool thing of the
day".

All of that said, I primarily use Groovy + Grails, Postgresql, Bootstrap, and
jQuery for building webapps. For backend microservices I mostly use Java with
Spring Boot.

Yes, there are "sexier" things out there, but this stack lets me accomplish my
goals, and I know it well and am very productive with it. And for me, that's
what matters most.

 _Tired of being that guy who has ideas but can 't make them a reality._

If there's a stack you already know well, I'd say stick with it. If not, I'd
suggest picking basically anything reasonably modern/mainstream for webapps.
So, probably not actually RPG/IV, or assembly, etc., but anything that's used
in this domain, and where there is plenty of documentation, community, etc. to
support you. Use PHP, Python/Flask, Java/Play, Scala/Play, Node.js,
Ruby/Rails, Groovy/Grails, Drupal, Joomla, etc.

~~~
vorg
You must really like Grails. If you do a Search All by Date on "Grails" at the
bottom of the page, 4 out of the last 5 results are your comments promoting
Grails as a solution to various Ask HN queries.

    
    
      Ask HN: What's your stack for your side projects?
      mindcrime a day ago comments 
    
      Ask HN: Rails or Flask for new API project in 2019?
      mindcrime 6 days ago comments 
    
      Ask HN: What is your favorite tool to build web startup?
      mindcrime 7 days ago comments 
    
      Ask HN: How many languages/frameworks do you regularly use?
      mindcrime 17 days ago comments 
    
      Ask HN: Go-to web stack today?
      mindcrime 25 days ago 
    
      Ask HN: What´s your favorite JVM Language?
      mindcrime a month ago 
    
      Ask HN: I'm a front end dev looking for a back end language. Which one? (No JS)
      mindcrime 3 months ago 
    
      Ask HN: What's your goto for creating a REST API?
      mindcrime 3 months ago 
    
      Ask HN: A tool that tracks various websites for keywords and give you updates?
      mindcrime 4 months ago

~~~
mindcrime
And your point is?

I'm not "promoting Grails as ..." in most cases. Notice that most of those
questions are phrased in terms of "What do you use for X?".

People ask questions, I answer honestly, just like I expect everyone else to.
Do you find something exceptional in that?

------
arcticwombat
"Things I don't need or that are obsolete or that I won't use"

That's a silly way of thinking.

* Define the problem to solve

* Look at potential solutions

* Pick one that fits

* Make stuff

Before you pick a solution (Language, framework, tool) you need to define the
problem, because all solutions are better at and for some things than others.

So, what problem are you trying to solve?

~~~
uptownfunk
I'm just trying to get an idea of what's being used out there to build a rapid
prototype of some simple ideas. Trying to avoid something exotic, just trying
to see what will get me the fastest from idea to prototype. I understand that
this will be different for many people, but I imagine tools like assembler/C++
wouldn't be many people's first choice for building a SaaS prototype.

~~~
arcticwombat
Sure, I get that, but there are as many opinions as there are tools, and
you'll get lots of people fighting each other over what's best.

Assembler, maybe not, but C++ makes perfect sense, in some cases.

And that's the problem.

You haven't specified what kind of problem you're solving, so it's almost
impossible to suggest ideas.

It's kind of like saying "I want to build something, what tools should I buy?"
(In regards to wood working).

I get tons of mileage out of ColdFusion, JavaScript, and Object Pascal. I make
things for web, desktop, servers, GUI and cli, but you could do the same with
PHP, TypeScript, and Java.

Or Nodejs, Dart, and Go.

I've used all of those in various combinations, and I gotta say that CFML + JS
+ Object Pascal is the most productive combo I've come across, but that's
what's worked great for ME, and I only picked that stack after working with a
whole bunch, and most of them professionally at some point.

Figure out what you want to build, then figure out what tools to use to make
it.

The most important thing though, is that you start making stuff.

You won't "waste" time by learning Java/Nim/JS/Go/Pascal/TS/whatever, even if
you end up switching languages later.

Programming isn't about memorizing syntax, it's about solving problems,
creating solutions, and there's an awful lot that applies to just about any
language once you get down to actually coding stuff beyond the basics.

~~~
uptownfunk
Incredibly helpful remarks, thanks!

~~~
arcticwombat
Glad it helped!

Now go make stuff :)

------
mortivore
>Tired of being that guy who has ideas but can't make them a reality.

Then you need to build something. Doesn't matter what you use if you never
build.

Personally I just use whatever I feel like learning with. My current fun
project is using golang, and react.

------
jadeydi
Golang + react + Postgres and it’s open source You can find it here
[https://github.com/godiscourse/godiscourse](https://github.com/godiscourse/godiscourse)

------
antoineMoPa
Rails, devise, Vue.js, bulma. What I like with rails&devise is the possibility
to have a base app running with authentication, db migrations, a nice standard
folder structure and efficient pages, all this in an afternoon.

------
muzani
My speed stack: Front end: jQuery and Bootstrap Back end: Parse Server DB:
MongoDB (mLab) Hosted on Heroku.

Very little learning needed. Parse Server will abstract out all the DB stuff
too. Things like Angular make it easier in the long run, but you can always
refactor.

IMO the trick is just to set a minimum target and aim to scale only 10x that.

What are you aiming for to "get this off the ground"? Side income of
$1000/month? Charge them $5/month? That means you're aiming for 200
users/month. Build something that supports 2000 users/month. Upgrade it as
problems appear.

------
ecesena
React statically hosted on Github pages. Analytics on Google Analytics or
Amplitude.

Whenever I can, no backend. If I need, either Google spreadsheet, Firebase,
App Engine... let's say I choose the one with less maintenance, depending on
what I have to do.

------
vkaku
Usually a new stack if I am learning something.

If it's not, I pick an old project of mine, rename the project
settings/README, remove the contents of the Src/ directory and start
repurposing it.

------
sreitshamer
Node, React, and Go.

------
hazz99
Backend Go, frontend React.

I want to check our Erlang/Elixir, and maybe Ember for the frontend. Trying to
figure out the most efficient way to build things!

~~~
karmakaze
Pretty much the same here. I have tried Elixir/Phoenix and found it
worthwhile. Just need to keep using it to be more proficient with it.

For the front-end, I've pretty much switched over to Vue either using only
local state or vue-stash. It's much lighter weight for smaller projects and I
like the single file components with default separation of layout and code.

------
AznHisoka
Rails, and postgres. Elasticsearch if there is a search layer to it. For UI:
JQuery.

------
amerkhalid
Laravel.

Slowly learning Vuejs for frontend.

~~~
saluki
Same, I still prefer javascript/jQuery but am learning Vue.

------
happppy
Backend: Nodejs, postgresql.

Frontend: Not worked on it yet but will use react.

------
hazbo
Go, Python, C, Postgres, Redis

~~~
15DCFA8F
Could you elaborate when you choose Python and when you choose Go? Does these
two languages complement themselves or they are substitutes?

------
nunez
ruby bash terraform, but i learn new things all the time

someday, golang will replace ruby

~~~
jadeydi
I’m using golang now, Golang template is terrible, rails is better than it.
But golang is good for back-end

~~~
nunez
golang templating is god awful, but i make heavy use of gomplate which
leverages golang templates internally

