
Show HN: Workouts – Learn by doing real developer projects - shivawu
https://real.dev/workouts
======
hcheung
I understand this is still under development and I can't full judge the
content unless I paid to unlock it. But this looks like a pay version of what
is available on the freeCodeCamp[1]. freeCodeCamp is not only free, you can
see the entire user story[2] before you take on the challenge, but for
Workouts, you have to pay first to see the steps/user stories...

[1] [https://www.freecodecamp.org](https://www.freecodecamp.org)

[2] [https://www.freecodecamp.org/learn/front-end-
libraries/front...](https://www.freecodecamp.org/learn/front-end-
libraries/front-end-libraries-projects/build-a-javascript-calculator)

------
ARandomerDude
Please take this comment as intended to be helpful, not rude:

I wouldn't pay money to learn web or mobile technologies from a site that
didn't display well on mobile.

~~~
uponcoffee
Second this; doesn't render well for me on Firefox Preview for Android.

------
qwerty456127
Too expensive. I'd pay $10 for a month of unlimited access to a site full of
stuff but it doesn't seem like I'm getting much for the bucks here. Perhaps
I'm wrong and the content is so good it's worth it, I didn't check so far.

BTW why is there )} at the end of every project description? Looks more like a
bug than like a design feature.

------
blowski
I'm interested, but I'd want to see an example of the spec I'm going to build
and the format of the instructions before giving my card number.

~~~
shivawu
Could you be more specific about what is the "spec" you're looking for?

As for examples, we do have some examples of separate tasks (non projects) in
the tasks page, that should explain how things work really well.

~~~
blowski
If I'm going to build a project like I'm building something for a client, then
I want to see the "brief" from the client. A 2 paragraph description with a
10-15 bullet points would be absolutely fine. Otherwise, these kind of courses
can feel like a series of tasks with an unfeasible thread trying to link them
together.

For example:

The client wants to run a calculator on their intranet, to avoid staff
searching for dodgy calculators on Google. A lot of the ones they find are on
dangerous, script-laden websites. Some of the calculators even give wrong
results.

* The client really likes Apple design, so wants the calculator to look identical to the macOS one.

* They want all the results to load client side, with no calculation done on the server.

* Staff do a wide range of calculations, but they're all using basic arithmetic.

* The largest numbers the calculator has to deal with are in the low millions.

* Staff machines are all fairly up to date, with the latest browsers (typically Safari or Edge), but they're not very powerful. They don't use phones or tablets to access the intranet.

* One of the users is partially-sighted, another is colourblind, and another suffers from restricted movement in his hand. As such, accessibility is really important for this calculator.

And so on...

------
arcturus17
I like the idea a lot... Sometimes I don't have a personal project in mind and
I'd like something more guided with which I could practice.

However, as others have said I'd need to see what I'm getting for the price.
Particularly I'm interested in how the spec is laid out, and how the solution
is laid out... From university I learned there's an art to building a pset
where you give enough pointers but do not hold the student's hand's too much
and that's what I'd be looking for - the right level of challenge, in a
nutshell.

Maybe you should give out a project for free, or create a sample or similar...

~~~
shivawu
Thanks for the feedback!

Sounds like a good idea to provide a free trial. But I also want to make sure
that people are actually interested in paying.

What specifically do you mean, by "how the spec is laid out, and how the
solution is laid out"? I guess I understand the spec part, but what about the
solution?

The from-university statement, so true, it's an art. We're trying to explore
to find the perfect balance :)

~~~
arcturus17
Is there no solution to ultimately compare against? How would I know how I’ve
done at the end? On the other hand, I wouldn’t want the solution immediately
revealed - you barely learn anything with that.

------
travbrack
Why would I do this instead of contributing to open source?

------
snissn
I think you could make it more clear that "Unlock for 9.99" unlocks all the
tasks under that project.

~~~
calmworm
Is that true? It appears as though one task will be unlocked for $9.99.

~~~
shivawu
Yes, it's true. Sorry about the confusion.

------
TurkishPoptart
I'm very interested, but could you perhaps provide a free open beta (perhaps
invite-only) so I could see if this will help me learn before I give away
money I don't have?

------
woat
Very neat idea.

I did notice that there is not many platforms that support fullstack projects.
A lot of it is simple bitesized function/method exercises (LeetCode,
HackerRank, CodeSignal, etc.) and don't encompass building applications from
spec.

There is definitely some resistance here on HN about pricing, but I wouldn't
worry about it. There are plenty of people who pay $$$ for courses (Udemy,
CodeCademy, PluralSight) so the market is there. If each workout provides at
least about 1-2 hours of content, then the price is in-line, if not a bargain,
compared some Udemy courses around the same length.

For what it's worth, while I understand that your business model is based
around finder fees, there is an extreme amount of value from building a solid
platform that can handle interactive fullstack courses like what you have so
far. There is serious acquisition or licensing/support potential (enterprise
onboarding) if this platform grows the correct feature set.

------
philsnow
from [https://real.dev/docs](https://real.dev/docs)

> Can I share my code?

> We strongly recommend against sharing your code publicly. It will ruin the
> fun for everyone.

s/the fun for everyone/our business model/ ?

Once people catch on that solving these problems can lead to landing actual
jobs, there's a certain kind of person who will share complete solutions,
either widely or with some in-group they're in.

Once that happens, the companies you're partnering with will (okay, "might")
start noticing quality issues with the candidates you're sourcing.

I don't have an answer to this problem. I don't understand the mind of the
kind of person who shares interview problem solutions.

~~~
shivawu
Thanks for the comment. Yes and no.

On the job seeking perspective, what you said is right. Typically what people
do is signing an NDA, but even with that, the question/solution still
sometimes leak on the Internet.

On the learning scenario, it's sorta true, but mostly sharing the solution
would ruin the motivation, at least for me personally. If I know there's a
solution sitting there, I wouldn't be interested in repeating it again.

I know it's sorta silly... But my mind works best when I only focus on the
problem, and how to solve it. As long as I know there's a solution, I couldn't
stop myself looking at it whenever I was stuck at any tiny bit.

~~~
the_duke
The home page really needs a better, terse description of what this actually
is.

Right below "What is Real Dev?" or below the video, which would probably
explains things, but which I'm not interested in watching.

The three paragraphs below only give a rough idea that has to be pieced
together.

~~~
shivawu
Thanks for the feedback!

The homepage is actually sorta old. I'll update it.

~~~
andai
The homepage text gets cut off on the left side on iPhone SE.

------
janpot
I like the idea. But I feel like it would be a good workout to make this
website mobile friendly and accessible.

~~~
cheez
Damnit janpot, they're devs not designers!

~~~
shivawu
Thank you! :D

------
james_s_tayler
Clicked on Business and got "an unexpected error has occurred". Also, mobile
experience is very much treated as a second class citizen on this site.

First thing I'm greeted by is "Unlock for $9.99". Instantly off-putting.

Curious though how real world does it go? I've got a course I've paid for
lined up to do as my next project after I'm done with my current one which is
making a clone of the internet banking experience of the bank I use. That
course is a full AWS Serverless project that assumes you've already got AWS
Developer Cert level of knowledge and the course is about how to a make
production grade application. Pretty excited to go through it.

The real-worldness of being taken through something that is realistically
complete to a production quality level is something I find pretty compelling
because it's something ordinary tutorials never give you. That's worth money.

------
kreetx
This is where _you_ pay to get work. :p

But an interesting idea!

~~~
shivawu
Pay to get work! That's one way to phrase it, I'll remember that, LOL

~~~
ta999999171
May want to value-prop it - Spend Money to Make Money.

Or, Spend Money to become someone who Makes Money.

No charge, hang onto the 10-99

------
mpmpmpmp
Downloading one of the Task Templates and attempting to expand the zip file on
OSX gives: Unable to expand "hello-real-world.zip" into Downloads. (Error
79-Inappropriate file type or format.)

------
siscia
Don't do it! Just have fun and understand how stuff work and why they work as
they do!

There is so much boring time in "doing real developer work"!

If you get time to invest, this is not how you want to invest it!

~~~
rjplatte
Disagree strongly. Functional understanding is how I learn best, and this is
perfect for me.

~~~
siscia
A react component? Seriously?

Now, let me be completely straight and honest, if you need exercises in react,
react won't be your career.

Do you know how reactive stuff are implemented in js? Do you know how those
are implemented in C?

Can you implement them yourself in both js and C?

If you can do it, a component like a calculator is trivial and you just need
to adjust the syntax and jargon. If you can't, this exercises will just be
exercises in memorization and shallow understanding.

What I am saying is to learn how to implement the underneath engine in low
level languages, it is much more fun and productive.

Anyhow, your life, your time! After all I am just a stranger on the internet.

~~~
shivawu
What you said makes sense, but only to limited set of people.

Not all people are interested/capable of learning how it works underneath.
There're like, I don't know, hundreds of thousands of React developers in the
world, very few of them understand how React really works underneath.

This is actually one of the goals that React was invented and popularized
inside Facebook. It's just sooo easy to pick up and start building.

That being said, for our product, it's not only about React and its basics. We
can totally create a workout project for React internals. That depends on what
you guys need :) We started with these two projects because it seems a common
useful and popular thing, and we're able to do them ourselves.

------
auslegung
I like this, but it's primary draw for me might not be the expected stuff.
Learning by building is a great method, but my problem is that I don't know
what to build. This website can help me by providing me with a lot of options,
simple -> complex. Great job!

~~~
shivawu
Thanks for that! That's exactly the idea, and the thing we build needs to be
useful in the real world, not some artificial thing that never exists :)

------
mendeza
Would be great if there could be niche workouts of Machine Learning projects.
I can see a list of machine learning projects that aspiring ML practitioners
can do to build strong skills and a portfolio companies would be interested
in.

~~~
shivawu
I don't personally know a lot about ML, but what you said matches what I heard
from friends who does ML.

What's your thoughts on Kaggle? Is it similar?

------
wefarrell
Would love to see something like this with an infrastructure component,
teaching automated deploys on AWS/GCP/Aure and a CI pipeline.

Also it would be nice to see how to accomplish the same task across different
stacks and languages.

------
applechen777
I like this idea a lot. I struggled learning new things all the time. This
will give me a list of interesting projects to work on.

~~~
shivawu
Glad you like it! Mind sharing a bit about your learning experience, so that I
can learn from it? :)

------
Stwerner
I really like this idea, and the stock market example looks really
interesting. Will definitely try this out!

~~~
shivawu
Thanks! Let me know if things work for you. You can reach me with the Intercom
chat window too.

------
sincerely
I would love something like this for a non-web-dev skillset. Does anyone know
of anything like that?

------
ar_lan
Why is this called Workouts?

~~~
reroute1
Guessing because it's like a programming workout (exercise)

------
chabad360
would there be a way for users to submit projects (obviously there would need
to be some sort of quality control)? I would think that this would be a quick
way to expand the community.

------
bgdkbtv
This is genius. Why haven't i thought of that :(

