
Ask HN: What are some hard coding projects I could create? - doubleponk
So I want to push my coding skills. I&#x27;ve spent more than enough time on coding challenge sites now and implemented enough datastructures&#x2F;algorithms. I&#x27;ve developed enough simple Saas sites. I want to start doing something useful and challenging.<p>I&#x27;ve thought about writing a database, but the world really has enough databases already. I&#x27;ve messed with compilers, but the world has enough languages out there already.<p>I have no itches out there I feel I need to scratch, I just enjoy coding.<p>What are some other challenging projects out there that aren&#x27;t already over-saturated with implementations?
======
ddorian43
You are welcome to hack on postgresql! From making queries faster (better
plans, computing on graphic cards, column-stores,compiling queries) to making
better the storage engine (column store, tokudb-like stores etc) to new type
of indexes to new type of queries (ex increment jsonb fields even if they dont
exist) to sharding it (and even different types of sharding (pg_shard, pg-xl))
to lowering the overhead (each row has 22bytes of overhead!) to so many
different things that are listed here:
[https://wiki.postgresql.org/wiki/Todo](https://wiki.postgresql.org/wiki/Todo).

------
GFischer
Must the hard part be about coding?

There are plenty of projects with hard challenges. I'm working with live
videostreaming using WebRTC and I've come across plenty of problems I don't
want to touch with a ten-foot pole - my approach is exactly opposite yours, I
want to go along the path of least resistance and leverage existing
infrastructure as much as I can.

The Mozilla team welcomes contributions, maybe you can ask to help on the
WebRTC team?

[https://www.mozilla.org/en-US/contribute/](https://www.mozilla.org/en-
US/contribute/)

Also Chromium or the WebRTC team:

[http://www.webrtc.org/contributing](http://www.webrtc.org/contributing)

~~~
doubleponk
Yes. Coding is what I enjoy and I am getting bored of writing stuff that no
longer challenges me.

Thanks for the suggestion, that is a great idea! I will look into them.

------
davismwfl
If you want a challenge get into computer vision projects like image
processing, image enhancement or video processing work etc. There are some
hard problems to solve. You could start by picking an existing algorithm that
people like to use but it takes too long to process and see how you can make
it better.

Or if you want a change, write firmware, drivers or other low level code that
is tough to do right and most require significant design, thought and testing.
IoT projects all need this type of work.

Another idea, work on distributed computing problems, they are still ripe for
innovation and problem solving. If you want a real challenge, combine all
three of my points.

I personally moved away from web development overall as while I get it can be
fun, I am just tired of it. I like doing the backend and solving scalability
issues, distributed issues, but designing, writing and handling web forms etc
is just not anything I care to do on a regular basis anymore.

At the same time on a non-technical level, I am personally expanding on my
marketing work as I have always done really well there so it is fun to help
others with it. But you mentioned coding specifically, so I know you are
focused there, but you might keep an open mind to what you can do outside of
it too for a challenge.

------
stepvhen
You should learn a new language, a weird one that isn't like others you have
used, e.g. if you have only ever done object oriented stuff learn a functional
language. I spend some of my free time just learning new, mostly impractical
languagess, and I have found that new ideas come through from the text at
hand, or from thinking about problems in a different fashion.

I suggest J, Erlang, and Idris. The first two have been around a while and
have a good set of larning utilities. Idris on the other hand has a little
more stuff going on, but learning about dependent type systems is fun. For me
at least.

J:
[http://www.jsoftware.com/help/learning/contents.htm](http://www.jsoftware.com/help/learning/contents.htm)

Erlang: [http://learnyousomeerlang.com/](http://learnyousomeerlang.com/)

Idris: [http://docs.idris-lang.org/en/latest/index.html](http://docs.idris-
lang.org/en/latest/index.html)

~~~
doubleponk
I'm not so sure - I'm already languages junky. There comes a time when you
have to stop learning new languages and start using what you know to create
stuff.

Idris is on my list already, but J actually looks really interesting. I've
only really seen it used in Code Golf before. Might have a little play.

------
asfarley
Image segmentation under occlusion. Email me if you'd like to discuss:
alexander.s.farley at gmail.com.

~~~
doubleponk
Thanks for responding. Yes, a lot of interesting stuff there. Looks like a
great rabbit hole to fall down!

------
robodale
So, you want to push your coding skills...to what end? Become more hire-able?
Make (a little) more money? Make something to show HN? Once you dig deep and
find your reason why you want to push your coding skills, optimize toward
that.

~~~
doubleponk
Fortune and glory - if I'm being completely honest.

~~~
GFischer
But do you value fortune more, or glory more? King or rich?

[https://gigaom.com/2007/12/10/do-you-want-to-be-rich-or-
be-t...](https://gigaom.com/2007/12/10/do-you-want-to-be-rich-or-be-the-king/)

[http://hbswk.hbs.edu/item/5543.html](http://hbswk.hbs.edu/item/5543.html)

~~~
kleer001
Are Kings poor? They seem pretty well off.

But I digress, that's just a naive interpretation. It seems like the articles
are more about issues of boundaries and control of the company.

~~~
GFischer
From the original poster's comments, I thinks he values being recognized and
technical archievements over founding a VC-funded crappy SaaS and becoming
rich :) , and he might be looking for a well-paid technical position where he
can work on hard problems. I might be wrong :)

------
5h
A system that auto-generates requests for hard coding projects perhaps?

------
jason_slack
Cocos2d-x game engine always needs help:
[https://github.com/cocos2d/cocos2d-x](https://github.com/cocos2d/cocos2d-x)

------
arisAlexis
do you want to make money, help the world or just code something hard? I think
the first two (with emphasis on the second) are(should be) way more important
to a coder.

~~~
doubleponk
All 3!

I want to challenge myself and become a better coder so I can create stuff
that is useful for people, which in turn would land me a better paid job.

------
andyidsinga
maybe pick an open source project to start fixing bugs?. the challenge* is how
many you can fix and get accepted by the maintainers.

*I realize this is not a purely coding oriented challenge. but it seems a worthy one if you're bored and are looking for something challenging do. also, bugs fixed + accepted counts toward resume fodder

------
tmaly
how about trying to make a project that provides some service and figure out
how to automate getting new users for that project. That is quite a challenge

------
segmondy
strong AI.

