I'm curious to know: What are you building? Whether it's a new app, a cool side project, or a innovation, share it here!
Details:
- What's the project about? - What inspired you to start it? - Any challenges you've faced along the way?
Question:
What motivates you to work on your projects, and how do you overcome hurdles in the development process?
It's a tool to help you improve your writing in your second language. We're still tweaking the input pre/postprocessing and prompts at the moment and would love some feedback!
Motivation for the project: my wife is French, I'm still not fully fluent and I sounded like a goof on text in her family's group chat so this helps sanity check my texts without bugging her for review.
We want to establish an alternative to Let’s Encrypt that is taking the core features and values from ISRG. That’s not based on “bad US!1!”, more then a alternative would strengthen the ecosystem. This also means to create an alternative ecosystem like boulder.
The current challenges are mostly about incorporating the non-profit and structure it right. So that it’s as open as possible.
Motivation? To help shape the security landscape and bring much wanted features that are not viable for Let’s Encrypt to implement. Viable describes that boulder would require major rewrites for it to get implemented.
Specially we want to provide SMIME and .onion certificates.
It’s currently a mailing list you can sign up here: https://bloomberry.com/remote-jobs/ . You can pick and choose from any role you want including ML engineer, backend, frontend, as well as other non-engineering roles.
I started it to scratch an itch of mine but along the way others were interested in it so I decided to build something people could sign up for :)
I had a fairly naive, limited Bash script wrapping docker to provide something similar, but for fun I decided to rewrite it in Golang with arbitrary command support. Turns out that Go is not my cuppa so I rewrote it again in C# (my go-to), using the AOT compilation as well. Something like this probably already exists but writing it is about the journey, the fun of problem solving.
It will ultimately be a simple translator from a convenient config format (e.g. something like below) to shell commands, so nothing special. Just a useful tool for my day to day.
[command="git",exec="/bin/bash"]
cm = commit
cm <CommitMessage:alphanumeric> = commit -m "$CommitMessage"
cm pop <CommitCount:int> = reset HEAD~$CommitCount[0] https://github.com/khaledh/axiom
Main challenge: not be too perfectionist. I hate the hustling culture where each MVP has to be rushed in 2 weeks. It might be risk-effective, but it can't possibly be meaningful. I want to do the best I possibly can with the greatest care however long it takes, but I also don't want to waste (too much) time on irrelevant details and over-perfectionism
Motivation: As a long-time meditator myself, I felt like I had outgrown guided meditations but still wanted a tool that’d support me in returning my focus with regular interval bells and - on occasion - pleasant background sounds (although I personally prefer to sit in silence) as well as show me daily goals and streaks to stay motivated.
As somewhat of an Apple nerd, I wanted this tool to be well integrated (Shortcuts, Widgets, Apple Health, etc…) and look and feel right at home on Apple devices (especially the Watch, which I primarily use for mediation tracking).
It’s the classic “scratch your own itch” story to be honest. Sounds cliche, but it’s a great source of intrinsic motivation! Seeing others use my app on a regular basis and valuing it for the very same reasons I started building it is a wonderful feeling.
Challenges and Hurdles: One challenge is certainly learning to prioritize new features and other work correctly and estimating the work needed. The latter is particularly tricky when working with new frameworks and technologies and the best way to overcome this challenge is to not be to hard on myself and learn to plan with more slack than anticipated :)
I was playing with Stable Diffusion and stumbled upon a post in r/PhotoshopRequests looking for people to do such editing manually. I tried Stable Diffusion and was surprised how good the result was. So I made it into a service.
It was challenging to kickstart the project from the marketing perspective. But there was quite some virality, which helped.
Another big challenge is number of factors affecting the quality of the results. The number of degrees of freedom to tinker with is large, so experimenting and iterating is tricky. However, I did learn a lot from this project - both technically and marketing.
Currently I am focusing on rewriting the generation pipeline to dramatically improve quality, especially on obstructed ultrasounds.
Currently only supports German and English, but I'll probably be adding Spanish next week.
- Inspiration - There should be a way to digitally fold origamis online. There really isn't one that works well so maybe I can?
- Challenges - Many. Understanding the math, working with 3.js, how to find points, edges and faces to cut so the user doesn't have to specify them, coming up with logic to deal with layering... The list goes on, almost endless. It's the hardest project I've tackled and one I underestimated the most.
- Motivation - Honestly, sunk cost fallacy. Always wrongly believing how close I am to where it needs to be. There's still many bugs, but at least there is no rush as they aren't showstoppers anymore.
Follow the tutorials in /create if want to know it more and /blog if want to read more on it.
I was looking for projects to do and this one seemed quite obvious, but at the same time FIRE folks are extremely frugal, so this couldn't be a for-profit project. I decided to try it as a passion project instead.
Kickstarting the community was a challenge - definitely experienced chicken & egg problem, but eventually reached critical mass.
The reason I made it was the reason I make most things: because I needed it myself. Making it was not that difficult, though I must admit I've never been too fond of Windows C/C++ APIs.
I have a feeling that the website could use some work. It's certainly not flashy, and mostly just text. Would appreciate any feedback :)
Also I have a SMPT server featuring automatic encryption using the WKD standard: https://dovel.email the idea is that people could self host their email easily. Maybe I'll make a SAAS for this.
My webring is mostly for fun and testing stuff: https://derelict.garden
Now they are hosted on my raspberry pi zero on my living room!
I'm learning Swedish and I found out that there are not many intermediate to advanced resources. Most language learning apps focus on beginners (rightly so, that's where the money is) so I built this first for me, but now I also have a paying users and people seem to like it.
Some new features I'm planning are SRS integration and pronunciation training with the "shadowing" technique.
Challenges: focusing too much on trying out new tech and finding a fair price point (still figuring this out)
For me, it started as a way express ideas. I wanted to build a platform where I could implement the ideas I acquired and thought about during my time as a competitive programmer. One could say it was a scratch-your-own-itch project.
I have never set any concrete targets for this project. No growth targets, no revenue targets. And that resulted in simpler motivations for the project.
Experiencing the evolution of the project in itself has been both a motivation and a reward.
It was inspired when working on a tutoring service and realizing that the key problem of AI tutors was that they didn't know the student well enough. As we started tackling the problem other builders around us mentioned similar concerns. It's been pretty hard to explain the value to those not experiencing the same problems, but it's slowly catching on.
I couldn't find any lock off the shelf that solved this, or a clean way to hack it with a fair mutex. So I wrote my own, and I'm pretty sure it's correct (1).
It's like a ticket lock, except the total number of tickets is known up front so every task can get one ticket. To acquire a lock is one CAS, where the lock is acquired iff the "current" value of the lock matches the ticket value of the task, if so we swap in a magic LOCK value. When the writer releases the lock it writes (ticket + 1) % num_tickets back to current so the lock can be acquired by the next task.
There's a deadlock condition though - if one task is cancelled while any other task is outstanding, no other task may acquire the lock, even if the cancelled task didn't acquire it!
To deal with that, the lock is poisoned with a magic POISON value. Then when any other task attempts to acquire the lock, but its value is POISON, then an error is returned and those tasks may be cancelled accordingly.
It's be possible to support adding/removing tasks concurrently by replacing the tickets with a circularly linked list of atomic pointers, so when one task is cancelled the "next" of the "prev" item can be atomically swapped, but I don't have a use case for that and it's annoying enough to write in Rust that I didn't want to bother with it.
(1) The code for this is here: https://github.com/m-hilgendorf/sequex/. I call it "sequex" for sequence-mutex. It could also be called a round-robin lock or something like that.
---
You could do this with just a ticket lock, where you take a ticket up front N times and then give one ticket to each task. When a task's ticket comes up it acquires the lock, but before releasing the lock, it takes another ticket. That's where I started, but I found this implementation cleaner.
I’m building it because I’m tired of being oncall for lousy delay queues, which seem to always be built in house with no docs or tests. I think I’ve seen it homebrewed at least 6 times now.
It’s the smallest possible idea I could see myself getting across the line while on paternity leave. I guess project number #1 is baby boy #2!
There wasn't any other newsletter like it, and I figured it would be useful for creators on the platform who are lookikg for new content ideas.
I'm thinking of shutting it down though. Haven't been able to achieve the growth targets I set myself, and I don't want to run it just as a hobby.
I have an example use case of embedding a snake AI player (trained in Python) in a JavaScript version of snake for distribution on the web.
https://www.cardamom.ai/snake.html
I have a similar demo building for iOS, I’ve deployed ML as a lambda layer before, and I’d like to continue embedding in fun places.
https://github.com/russellw/chatgpt-unpack
ChatGPT allows you to download an archive of all the conversations you have had with it, so you can do things like search for past conversations with your choice of search tool. The archive is in JSON format, not quite usable directly, so I wrote a program to unpack it to plain text.
https://www.interviewblindspots.com/featured
People will post the question and the code they wrote in interviews. Experienced developers will give feedback.
Contributors/Cofounders welcome
Active Directory monitor tool that tracks changes committed in real time.
I used it internally when I had to do bulk changes or when I have to replicate AD during migrations.
Right now I am working on a new frontend which I will be integrated to the tool soon.
https://reportmill.com/SnapCode
I'm mostly doing it as a labor of love, though I have no real users so far. Not sure how to properly get the word out.
Copy, Paste, Paid.
Inspiration - Receiving invoices without a clear alternative to mailing a check.
The current use-case is the most basic possible, I'm using it to keep a daily, notes and ask general questions. the LLM then save some of the data it extract from the notes into collections that I plan to use later. It is quite new project yet