Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: What did you make during lockdown?
217 points by shimmmaz on June 21, 2020 | hide | past | favorite | 539 comments
While we were all in lockdown a lot of makers have been making incredible things. So I decided to make Lockdown Showcase to showcase all those products.

Post your own product or browse through other ones here: https://lockdownshowcase.com/

I made an automatic chess board that allows you to play with another person over the Internet (using lichess), but with a physical board. It has been described as "very lockdown chic".

Each chess piece has a magnet in the bottom. The board senses your moves by looking at where magnets disappear and appear, and it plays your opponent's moves by dragging them with an electromagnet underneath the board moved by a pair of stepper motors.


Have you considered Kickstarting this?

Your pitch could be: "like Regium, except it's not vaporware and actually works."

I mean that company had nothing and they were well on their way to raising 50k, before they were stopped. You have a real product. That $50,000 should've been yours.




Thanks, but it's really not a consumer-quality product, and I don't think I have the engineering chops to turn it into one. The frame is made by hand out of plywood. A lot of the wires inside are just taped in place. The Raspberry Pi takes several minutes to boot up to the game screen, during which time you can't interact with the board in any way, and you just get a load of Linux nonsense on the touchscreen.

It's also extremely time-consuming to assemble because of all the wiring required for the magnet sensors, and if you short one of the power connections, there's quite a lot of binary-searching over possible joints before you work out which one needs fixing. I would not like to make another one :).

If you want to buy a commercial one you should check out https://squareoffnow.com/ - it has the advantage that it is actually a product you can buy, but the disadvantages that it has no clock display, no button to confirm your move inputs, doesn't support lichess, and requires use of their smartphone app.

Working with a contract manufacturer should be able to alleviate those issues you're mentioning. Feel free to DM me if you have more questions. Awesome project!!

I'd be interested in learning about how contract manufacturing works, although not necessarily for this particular project.

Hacker News has no DM function.

That said I think the prototype doesn’t give you much more than starting with nothing in terms of a kickstarter. Other than the marketing advantage of being able to show what the eventual gameplay will feel like. But no head starts on the product itself that would need to be designed for bulk manufacturing.

Just wanted to chime in saying I'd be very interested in purchasing one/supporting a kickstarter for a lichess-connected board — even if a bit hacky, it would still be wonderful

I highly recommend you upgrade to the Trinamic drivers! I modded my 3D printer that used the whiny A4988s with TMC2208s and the results are amazingly silent. https://www.reddit.com/r/MPSelectMiniOwners/comments/gsiai0/...

I actually did (half) do this since that post.

I bought one Watterott TMC2208 board and found that it was an easy drop-in replacement, compatible with my microstepping configuration, except the motor connectors needed flipping round else they ran backwards (if you're making a drop-in replacement for another product, and you have the option of making the motors move the same way as the other one, or the opposite way, why would you not just make them move the same way? the mind boggles).

Satisfied with this result, I tried to buy another one for the other axis but could not find another Watterott item on eBay, so ended up buying a no-name one, and it looks basically the same except something is weird about the microstepping modes, and I haven't been able to select a microstepping mode that is suitable, so I've given up on that for now. But at least I've got one quiet axis now, and if I come across a Watterott TMC2208 board, I'll know what to do with it :).

This is brilliant, I've wondered for some time if something like this was available, it's a great way of linking the online chess boom with tradition, particularly for those of us who don't like staring at screens.

I wanted to build one myself, and it was only a complete lack of mechanical know how that stopped me.

I don't fancy bullet chess on it tho...

There’s an online chess boom?

This is fantastic. I've wanted something similar for Go where it reads a physical board and sends the move to a game server. I don't know how it would place stones the remote player placed, or where this vast supply would come from.

I really recommend to replace drivers with TMC2208 one! They are plug in replacement and silent. You won't hear anything at all.

How does it handle moves where pieces might accidentally hit each other like https://en.wikipedia.org/wiki/Castling and knight moves?

It uses a ridiculous bastardisation of Dijkstra's algorithm to work out the shortest set of operations to get the piece from where it is to where it needs to be. This includes a way for it to notice that it would like to run into another piece, and then add to the search tree a copy of the current node, but with some operations inserted at the start to first move that piece out of the way.

It's in here, but not for the faint-hearted: https://github.com/jes/autopatzer/blob/master/mojo/lib/Autop...

I did try giving it an accurate model of the acceleration curve of the stepper motors, so that it would do the set of moves that actually took the least time, but that led to strange motions where it would deliberately move pieces too far, and then back again at a diagonal, just to minimise the number of corners it needs to turn, so I instead just made it do a simple shortest-path, because it looks more natural to a human observer.

I.e. instead of going 2 squares right, then 2 squares up, then 1 square diagonal up-left, it would prefer to go 4 squares right, then 3 squares diagonal up-left. It takes less time, but looks stupid.

I'm having a hard time not crying over how beautiful this is. There's something so ludicrously satisfying about bringing our professional computer science hammers to bear on silly hobby projects. I love it. It's like being a kid again, where everything is just imagination and fun, but we get to finally play with the big boy's toys (like Dijkstra's algorithm).

In the video you can see it slightly moving a piece in the way to let the knight through

Check out the video in the post they linked. Moves the piece slightly out of the way. Honestly incredible!

There is usually enough space between two chess pieces to easily fit a third one between them on these boards. So from my understanding the magnet just moves the third piece from between the two other pieces without hitting either of them.

I sized the squares on the board so that there would be enough room to slide a piece orthogonally between 2 other pieces, but was actually not able to make use of this property in the end.

The problem I faced was that when I had magnets that were strong enough to be reliably grabbed by the electromagnet, they were strong enough to repel each other if they got too close! I went through quite a large selection of different magnet sizes before I settled on the final one (which is 6mm diameter, 6mm tall, neodymium cylinders). They're strong enough to be grabbed by the electromagnet, and weak enough that 2 pieces can be in the centre of a square and a corner of the square without moving apart, but unfortunately still not weak enough that a piece can slide in a straight line past another piece.

When there is a piece in the way, it works out whether it would be shorter to move a piece out of the way, or to route the long way around, and picks whichever is shorter.

This is so cool! Can it be set up to track both players in an lichess game as a spectator? I think that'd be pretty cool, having a self playing chess board as a display piece.

The only reason it can't is that the Lichess Boards API makes you authenticate as a user and doesn't give you access to a game that you're not playing, which is a shame. I think the reason is to prevent people from surreptitiously setting up a separate program that will anonymously observe their game, run it through Stockfish, and tell them what to play.

If the player you want to spectate will set you up an API key, then yes it can do that.

reminds me of wizards chess in Harry Potter.

William Gibson would be proud.

(Before anybody takes any offence on this, I really hope y'all read Johnny Mnemonic).



That's amazing!

I managed to plant vegetables and keep them alive and growing well in to June.

I make the same attempt every year, so this is a record for me.

On a more serious note, I had plans when the lockdown began. I wanted to build some kind of a "robot" as an educational venture. Do some redecorating, learn Unity and figure out how to use the TIG welder I bough one night when I was drunk. In reality what has happened is that my children's school, after school club, their sports clubs and Scout groups have given them so many lockdown "challenges" I haven't had time to do anything because I'm in charge of them because my wife has to lock herself away from 9 to 5 to do teletherapy.

Tig welding is great way to essentially meditate, similar to painting, once you figure it out that is. Start with lines on 1/4" steel flat bars.

I find oxy/acetylene welding super meditative. The sound blocks everything out, putting you in a pink noise cocoon.

I have a fairly basic stick welder which I have used on a few occasions to do a few basic repairs and and make some metal supports for storage boxes.

I don't have a particular need for a TIG welder, but I bought it so I suppose I should find something useful to do with it. Problem is, I'm more of a woodworker.

The main reason for tig is small stuff, exotic stuff, and stuff where you just want the welds to be gorgeous, eg if you're going for that nasa look.

The goal for mig is to hot glue some metal together. My friend does woodworking and loves making legs out of rebar/etc with the mig welder.

I should have got MIG then. A nice weld is beautiful to look at, but my needs are more practical.

Still, I'll give it a go. My son wants to build a "mecha arm" with all sorts of spy features. This might be a good excuse to learn how to use it.

One of my favorite after school activities as a kid was playing with Lego’s Mindstorm robot kits — if your kids have any interest, it could be a fun (and productive imo) way to have your interests meet in the middle :).

My son is a Lego obsessive, but he doesn't really go in for the more technical stuff like Mindstorms or Technic - he thinks it is overpriced and prefers to use Scratch and an Arduion to make machines and the like.

The irony is that he owns about €1000 of Lego bricks. He spent half his first communion money on Lego (€300), we made him put the rest in to the credit union. Since them he has told us he has become atheist as science makes more sense, but he'll still do his confirmation to get more money to buy Lego. Hmm....

TIG is fun. I've been learning to weld aluminum recently, with no prior welding experience. Mostly from watching YouTube, but I've gotten a bit of advice from random people I know who know how to weld.

Aluminium welding is somewhat hazardous to my understanding. If I remember from talking with a metal smith in my family, it can give off some pretty noxious fumes. Apparently it can even yield Arsenic and Florine fumes (CDC website mentioned those, among others). Again, if I recall correctly, something like a full-face P100 acid-gas mask is usually enough.

I learned the basics of Houdini to turn Lidar data into visualizations [1], as well as take a point cloud scan of my wife to drive a particle animation [2].

On the non-tech side of things, our garden has been a real source of happiness. We planted everything from seeds with the kids and grew pollinator flowers, vegetables, etc. [3]

One of my favorite projects was finally making a sourdough starter and taking my pizza making up a notch. [4]

1: Houdini https://www.instagram.com/p/B_nG_jdpY7F/?igshid=r2pegr6lrr3l

2: art http://gregorywieber.com/insta.html

3: flowers https://www.instagram.com/p/B_-f3h5JWUq/?igshid=rf7jx6vaimgw

4: pizza: https://www.instagram.com/p/CAy8Hf0pF29/?igshid=1gipfxkhd9bh...

Great work! Reminds me of Woodkid's photogrammetry experiments : https://youtu.be/RWMMdX6KYGM?t=70

Amazing work! How did you do the 3d scanning?

Thank you :) For the portraiture I’m using the iPhone Pro’s True Depth camera via an off-the-shelf app called “Capture” by Standard Cyborg.

I made an allotment! After waiting on a list for a while we received 10m x 10m space for ourselves for €50/year. We planted onions, potatoes, garlic, radish, and a few similar things. The timing worked out pretty well as we got access just at the start of May, which is a good time for planting a lot of things, and coincided with the lockdown here in Finland.

This morning I went over there and harvested some of the garlic, and right now our house smells of it. In a week or two it'll be dry enough to eat.



Not a project, in the sense that this site usually lists, but still something I (we) made.

I resuscitated a 20-year-old-website that was somewhat popular back in the day called storysprawl.com. It's private now, but I have friends join me on Sunday nights to write chapters together - we join Zoom, we write, we read them to each other. It's kind of like choose-your-own-adventure combined with round-robin fiction: Read chapter one, there are choices at the bottom, make a choice. If the next chapter is written, keep going, and if it's not, you can write the next chapter yourself and create choice labels at the bottom (if it's not The End) for other authors to follow up on in the future. It's stupid fun - our main story is now 128 chapters with an average story length of 11 chapters. I'm able to do math to project that this particular story will probably end up around 600 chapters and 1000 pages before all the storylines are completed.

I'm keeping the site private for now because I can't be bothered to see a lawyer and get my legal policies/checkboxes in place, but on Friday I did host a live event where I read chapter one aloud, had viewers vote for what choice to take, and continued until we hit an ending. It worked well, it was just a facebook event for friends, and eight people showed up out of my 200 friends which is pretty good. I'll probably do it again and open the event up to the Public. I'm hoping I'll attract more interested authors, I can always slowly give them access to the site.

(If anyone here likes the idea of contributing silly creative writing - third person, past tense - feel free to message me.)

Collaborative writing can be great fun - I used to contribute (on occasion) to collaborations on Usenet poetry groups (when taking a break from tweaking the trolls). I wish you all the best for taking this project forward!

neat project! the collective writing process seems intimidating to me, although i've always secretly wanted to dabble in fiction writing.

> "I'm keeping the site private for now because I can't be bothered to see a lawyer and get my legal policies/checkboxes in place..."

not to belittle what you've built, but i really lament how much legal considerations overhang our collective psyches, especially on the internet, and how much we believe in legalese and lawyers to protect us from potential issues. both the risks and the protections are unduly outsized in our minds.

by default, we each own the copyrights to our own words. posting our words on websites should implicitly give those websites permission to display (perform) those words (or not). we shouldn't need pages of jargon to spell that out, and no amount of expensive precognition is going to ward off even most potential misconstruals (malicious or not).

I agree... 20 years ago I had no qualms about putting the site out. But now even aside from IP policy, there's privacy policies, child policies, GDPR... and I'm not sure if there are shelves below which I don't have to worry about that stuff. At some point soon I'll find a lawyer that can help me figure that out, because I would definitely like to just have the site out there for people to visit even if I'm not going to market the heck out of it.

This sounds interesting :)

My wife is doing something along the lines (ba-dum tss) with a friend of her: i am keeping a REALLY old version of "legend of the green dragon" online for them and they write a huge fantasy story together on a daily basis. They should get that printed in a book some day :)

That's one of the things that drives me about the site. I just think it would be so fun to have some of the stories eventually "completed", and then I could get them printed. Even if they don't "sell" and are just vanity projects, it'd be fun to have a series of StorySprawl books on my shelf. I actually do have two of the stories completed so far, but they are both pretty lousy. :) But if I ever get some serious time off, I could see myself diving into a markdown/pandoc/latex/docbook thing to start auto-printing them.

It is really fun to make books - I've also read some lengthy popular fan-fiction works, and when they get popular enough, people pop up to make underground books out of them. My wife printed out the six-book "Harry Potter and the Methods of Rationality" series for me from a github repo for Christmas. Looks nice on my shelf!

I've been contributing to the Andorid port of Anki (HTML based flashcards + spaced repetition) for the past few months.



Knowing that I've actively been impacting students (particularly medical students) from around the world has been really good for the soul.

I rely heavily on Anki for work and study. Thank you!

The android version already seems to work great. Is there a roadmap somewhere? I'm curious what's being worked on.


No official roadmap (such is Open Source), but:

* Rust Conversion (got a proof of concept, need to productionise it) - Anki Desktop has moved to Rust. We can unify all of the platform, and remove most of our backend code and maintenance burden. * Android 11 has made significant changes to how applications store files on the device (Scoped Storage). I expect this will be a nightmare to deal with: https://developer.android.com/preview/privacy/storage * Visual HTML Editor (probably 2.13) - currently editing and adding formatting could do with a ton of love. Typing HTML by hand isn't a great experience for non-technical users. * User onboarding & UX - We get tons of bad reviews: "All my cards have been deleted" - this is because we fail to explain how Anki/Spaced Repetition works and that we take control of scheduling. People download AnkiDroid expecting flashcards, and we can do much better in this area. * Performance improvements with larger collections - we're fast, but there's still lots of low-hanging fruit regarding multithreading. * Background media sync - Medical Students have multi-gigabyte collections (just fixed a bug where some Android systems wouldn't open zips >= 2^31-1 bytes). We're tied to the AnkiWeb protocol for syncing, but it'd be a much better UX if we moved this to the background.

Personal Goals (some point in the future)

* CI/CD improvements - both speeding up build times, adding more styles of testing to the pipeline and adding more auto-linting. * Accessibility - our TTS doesn't play well with Android talkback; this hurts me to type. * Better gamepad support

Missed the edit window formatted:

Thanks!! No official roadmap (such is Open Source), but:

* Rust Conversion (got a proof of concept, need to productionise it) - Anki Desktop has moved to Rust. We can unify all of the platform, and remove most of our backend code and maintenance burden.

* Android 11 has made significant changes to how applications store files on the device (Scoped Storage). I expect this will be a nightmare to deal with: https://developer.android.com/preview/privacy/storage

* Visual HTML Editor (probably 2.13) - currently editing and adding formatting could do with a ton of love. Typing HTML by hand isn't a great experience for non-technical users.

* User onboarding & UX - We get tons of bad reviews: "All my cards have been deleted" - this is because we fail to explain how Anki/Spaced Repetition works and that we take control of scheduling. People download AnkiDroid expecting flashcards, and we can do much better in this area.

* Performance improvements with larger collections - we're fast, but there's still lots of low-hanging fruit regarding multithreading.

* Background media sync - Medical Students have multi-gigabyte collections (just fixed a bug where some Android systems wouldn't open zips >= 2^31-1 bytes). We're tied to the AnkiWeb protocol for syncing, but it'd be a much better UX if we moved this to the background.

Personal Goals (some point in the future)

* CI/CD improvements - both speeding up build times, adding more styles of testing to the pipeline and adding more auto-linting.

* Accessibility - our TTS doesn't play well with Android talkback; this hurts me to type.

* Better gamepad support

I would love to contribute to Anki, especially learning that it's Rust. I know Anki's time-based space repetition is highly effective for long-term learning, but I've found it frustrating when I or my friends really just needed to cram the night before an exam.

When I am strongly constrained in the time-domain, I've found the older Leitner method to be the most efficient. I also have a lot of difficulty performing this in Anki except by resorting to absurd time controls and manual resets that are difficult to explain to friends.

I'd love to provide Anki with a strict Leitner mode for last-minute cramming. I'm just not sure the Anki project would support this, as I've seen them be fairly dismissive of it in the past.

It's very exciting that this is in Rust.

i thought anki was written in python - was it re-written in rust?

It's in the process of being migrated to a Python/Rust hybrid. Most of the backend is now rust-based: https://github.com/ankitects/anki/tree/master/rslib

I guess Anki Desktop is now being rewritten in Rust, according to 'DAllison in the parent comment.

Awesome, thank you for the info. Anki is a tool I use and love but I know very little about the behind the scenes work.

>* User onboarding & UX - We get tons of bad reviews: "All my cards have been deleted" - this is because we fail to explain how Anki/Spaced Repetition works and that we take control of scheduling. People download AnkiDroid expecting flashcards, and we can do much better in this area.

Somewhat related, but I would like a way to "cram" cards (ie. temporarily review all cards in a deck, in random order, without affecting anything about their spaced repetition timing). I feel like this must exist but I haven't found it. Do you know how to do this?

Also, how does Anki support the costs of Ankiweb? Is there a way I can contribute? It's not immediately obvious to me from clicking around on Ankiweb.

Finally, is this just a rip-off of Anki or is it legit? https://www.ankiapp.com/

> Somewhat related, but I would like a way to "cram" cards (ie. temporarily review all cards in a deck, in random order, without affecting anything about their spaced repetition timing). I feel like this must exist but I haven't found it. Do you know how to do this?

That's a strange one... it exists, (Create Filtered Deck - Long Press - Options - Untick Reschedule) but only works well in the V2 Scheduler. The V1 scheduler doesn't handle cards in the red (learn/relearn) well.

The problem with the V2 scheduler, which makes people hesistant about upgrading is the upgrade process will move all cards in the red queue back to the blue (new)/green (review) queues. https://anki.tenderapp.com/kb/anki-ecosystem/the-anki-21-sch...

> Switching the scheduler will empty all filtered decks, and reset any cards that are in learning. It will also force the next sync to be a full sync.

Manual Entry: https://docs.ankiweb.net/#/filtered-decks


No. Damien's opinions on funding: https://faqs.ankiweb.net/why-does-ankimobile-cost-more-than-... . The iOS app is paid ($24.99) and funds AnkiWeb, so offer to buy it for a friend if you can.

Personally, I'm taking donations (caveat: AnkiDroid is a port, I'm one of a few contributors, and the money would go to me, rather than Damien, who runs the rest of the ecosystem (AnkiWeb/AnkiDesktop/AnkiMobile)): https://github.com/sponsors/david-allison-1/


AnkiApp isn't part of the ecosystem. It's frustrating telling people that they were mislead, and data extraction isn't easy for non-technical users: https://anki.tenderapp.com/kb/anki-ecosystem/ankiapp-is-not-...

Thanks very much for the info.

Why don't you put up an official roadmap? Why is "Open Source" stopping you from doing that?

No good reason. It's A combination of time allocation, the fact that it's a collaborative process and I'm still learning the ropes, and the fact that nobody's asked for one until now.

When did you get to the point where you were confident enough to hop on some opensource shenanigans?

(new account, hit the HN anti-procrastination timer)

I hadn't contributed to Open Source before, had never wrote Java professionally, and my Android knowledge was pretty much non-existent, but I was aware of the project and how it operated. The catalyst was encountering a frustrating bug, and downloading the source to fix it.

The best thing about working on an application rather than a library is that you're dogfooding your own changes, and you have a good intuition for what the end result will be. You can always tell yourself: "Even if this isn't accepted, I find it useful and can use it".

I started out with small issues that I wanted improving, gradually moved on to getting access to crash reports, and fixing most of them (I think we're down from around 12 to 0.05 crashes per 1000 users). Confidence with larger issues comes from experience: documentation helps to some extent, but sitting down and reading the source code is always useful, as is looking to the source of the port as a source of truth.

Most projects would benefit from more volunteers (I just helped put out an ad for contributors on Stack Overflow). For confidence: accept that you're going to make mistakes as you start out, but the value that you bring to a project will overwhelmingly be net-positive as long as you stick with it.

I use it to learn Japanese and it's very useful. Thank you for your contributions.

Having a monthly "Show HN-athon" would be nice (or is that already a thing and I always miss them?).

- I did some woodworking at the start of lockdown. It was very therapeutic. Built a small table with a flip-top back where charging accessories can be stored: https://imgur.com/ea67ANO

- And some more woodworking to build a shoe rack (never enough room for all our shoes): https://i.imgur.com/ihw12YT.jpg

- A Raspberry Pi using BigGAN to constantly "daydream" weird, artistic photos: https://blog.hmac.io/2020/06/08/a-daydreaming-ai-for-my-desk...

- A new image hashing algorithm that can recognize matching photos even in extreme cases like disparate crops from a parent image. Used it to help my friend dedupe their school's yearbook: https://blog.hmac.io/2020/06/10/writing-new-image-hashing-al...

- Currently building an escape room for my wife's birthday. Poor little 3D printer is working overtime this quarantine :)

That side table is amazing. How did you learn woodworking? I’ve been meaning to get into it but have no idea where to start.

Back in college I got the bug for woodworking, so I went to the local big-box, bought a hand saw, screws, an electric drill/driver, and some wood. I built a spice rack using just that. It came out _terrible_. Lopsided, broken drill bits inside it, brackets holding it together. I had no idea how stain worked, so I bought a can of stain and threw the whole thing into a trash bag with the wood to leave it for a day.

I still have that ugly spice rack. Sometimes the best way to learn is to just do.

Many years later I got the bug again and that time I started spending more time on YouTube. I find videos to be an incredible resources, whether I'm browsing for something specific or just watching good content and learning secondarily. Matthias Wandel has a channel with a variety of content that's worth watching just on its own, but you'll learn endless amounts of woodworking skills as well. Steve Ramsey's channel is great, though his videos can definitely be a bit annoying to watch. Really there are too many great channels to name. Best bet is to figure out what kind of thing you _want_ to build and then search for videos on how to build that. I guarantee there will be hundreds of great, simple tutorials.

If you've got a woodworking store nearby (e.g. Rockler) they often have free or cheap classes that can be great even for newcomers. Those are great because you don't need any tools; they provide everything. And they cover a wide range of stuff so you can figure out what kind of woodworking you like. Maybe you like turning wood, or working with a scroll saw to build small decorative pieces. I attend a Father's Day class where we made a wooden bow tie. It was free and introduced me to scroll saws, inlays, and spray varnish. Best of all, I got a great gift to give my father at the end of it.

Thanks, already subscribed to those channels. Thing is, much like a lot of comments here where devs want to learn new tech but struggle to come up with a side project idea, I can’t really think of anything useful that’d be within a beginner’s skillset. Anyways, thanks for the thoughtful reply and maybe watching a few videos will spark my creativity!

People also asked for a monthly/recurring Show HN in this other (also very interesting) thread. https://news.ycombinator.com/item?id=22648431

Maybe it's an idea that will get traction.

> Forgive me, but when I program I know what the variables I am working with are doing, and what kind of data they are storing.

Someone posts a side project Ask/Show HN thread every once in a while, but I haven't noticed any regular Show HN threads, either.

I've written SAAS called Docula (document generator that doesn't suck).

I've been programming professionaly for close to 20 years and no matter what I always ended up writing PDF generator for one case or another. This time I've had to write another PDF export again and I've decided to do it right this time.

Having some unexpected extra time I've decided to create WYSIWYG editor in similar fashion to Figma or Zeplin where you set your components and then you just call API endpoint with json data (variables, collections...) and you've got your pdf file

Stack is quite simple: Rails app for all the book keeping, visual editor is written in vanila JS and the generator itself which takes variables and template data (both json) is written in Go.

I am just getting ready to launch it, so if you are interested you can sign up at http://docula.app and I will send first batch of invites in month or so.

Sounds good. Subscribed!

Tool to annotate audio files in real time. Built this because I'm taking remote saxophone lessons, but could be more broadly applicable no doubt. https://audioremarks.com/

Tool to delete items from gmail en masse per sender: https://github.com/poundifdef/gmail-deleter

Open-source website to turn recipe websites into plain-text and printable versions: https://plainoldrecipe.com/


I didn't quite keep up with my normal responsibilities while also not quite managing to keep up with the remote learning my kids were doing.

Yeah anyone with young kids had far less time during lockdown, not more.

Yeah. I hate reading threads like these because it only reminds me just how stressful lockdown has been and how much less time I’ve had to spend on my personal projects.

Still, I am glad that others have been able to turn a negative into a positive.

Edit: that said, it had been nice spending more time with the kids

Sort of depends I think. We have a four year old and two year old twins. We've found we have a ton more time. Mostly because we were forced to actually slow down and be at home instead of always on the go.

We have approximately the same kid layout, just a few years further down the road (twins with an older sibling). Once kids are in school, the situation changes dramatically. School ends up consuming a big chunk of the "work" day, so keeping up with work takes up much of what used to be "family" time, net result is that there is far less free time now than there used to be.

This has been my experience too.

If both parents are working full time (not furloughed) then you often end up working early mornings and evenings to compensate for lost time during the day.

Same is also true if you have younger kids but either / both parents work jobs that require lots of formal meetings. As understanding as employers have been, there’s only so many times one can have a meeting interrupted because a doll fell over or Duplo piece fell off an impossible structure. So parents will often arrange their day where they essentially tag-team their day, meaning lost hours are made up in the early mornings / late evenings.

Made a platform for party/drinking games over Zoom.


Games run on Realtime Firebase DB, so players join with a link and everyone is kept updated with game flow and other player actions etc.

So far had 10000 people play, and has 9 games and still working on more. The focus for now is on social/turn-based kind of games.

Runs on Vue and Firebase. FB helped me to launch it in a month. Wrote about it at https://codeburst.io/how-i-built-a-real-time-games-platform-...

Cool! Will have to check that out. I've been doing "happy hour" with a handful of friends in multiple countries each Friday and mostly I just screen share one of the Jackbox games (the "You Don't Know Jack" people). Video and audio is sent from my PC and people use their phones as a "buzzer".

Still, despite having multiple games available, I'm always glad to test out some other options.

Great, would love to hear any feedback!

Looks awesome, I've been recently playing Jackbox over Zoom with friends and was hoping to find something different. Will check it out.

Thanks, hope you like it!

I went from knowing nothing of French to reading 20 thousand leagues under the sea by Jules Verne in French (the original language)

It's not that big of an achievement since I'm Brazilian and I already speak Italian, the romance languages are somewhat similar. But I'm happy and I want to keep learning new languages because that proved to be a rewarding experience all steps of the way.

I've used Lingq and Memrise, if anyone is interested :)

Was going to ask what you had used. Brazilian too, but know only Spanish (kinda), and English. Will check out these two. Thanks and congrats!!!

LingQ is something else. The ideia is that you should feed the app with "input" from your target language that you care about[1], and listen to it again and again. Memrise is more like a Duolingo that actually works haha

[1] https://www.youtube.com/watch?v=rw-u_vVx6Is


I do envy you. Been busting my brain with French for years as its always been my dream to speak it. But coming from Slovenian (slavic) and not having an ear for languages does not help.

So, congrats!


I got to playing around with recurrent neural networks and made a site that generates Crossfit "Workout of the Days (WODs)". It's trained on the workouts from crossfit.com.

My motivation were to learn more about how character-based RNN's work, remember how to host a site on my Digital Ocean VPS with flask, and do some fun frontend work. It posed a few unique challenges, like scraping the crossfit website, experimenting with different network architectures, and finding ways to validate the efficacy of those networks.

It's terribly overfit and will sometimes generate workouts verbatim from the crossfit.com database, but since it's just a fun project, it was more important for me to get consistently good, grammatically correct results and some overfit ones rather than a bunch of nonsense text and a few hidden gems.

My next step is to sum up the key takeaways in a blog post about the full stack of the application and call it finished, or continue to play around with network hyper-parameters and training techniques, since nurturing my neural network knowledge for NLP was a huge goal.

Always looking for feedback and happy to answer any questions!

I love this project! Have you tried actually completing any of the generated workouts?

How do you calculate overfitting for something like this? I know how you would do so with a more traditional supervised learning model with numerical inputs/outputs but NLP still seems a little like black magic to me since I haven't dived into a project using it myself. Is it just a comparison of similarity between generated posts and all posts in the training set? How do you calculate how "close" an output is to an input?

Haha no I might get kicked out of my gym if I try to do

- Workout of the day (WOD)

- 15 Dumbbell Throws

To understand how I calculated loss, I have to describe the whole model, so let's take it from the top.

The model consists of 3 distinct layers. The first layer is a character embedding. We need a unique representation for each character in the entire corpus. Without checking, I believe it was ~80 different characters. This includes all the the uppercase letters, lowercase letters, numbers, little symbols, and even the new line character (`\n`). One way to encode these characters as a state vector is to one-hot encode each character. With one hot encoding, something like 'a' would be (potentially) encoded as `[1,0,0,0,...,0]`. Each character has its own unit vector orthogonal to all the other vectors. With ~80 different characters, a one-hot encoded corpus would span `R^80`. That seemed prohibitively large to me, so I went with the learned embedding route. With an embedding, you reduce the dimensionality of the state vectors from `R^80` to something much smaller by no longer making each vector orthogonal to each other. In this system, `a` could be encoded as `[.34, 0, .01,..., 0]`. In this system, characters do not have their own unique dimension and their cross-products are no longer 0 as they are not independent. But this is actually something we want! We learn different characters are related to each other from the corpus. This may put all the number character vectors closer to each other, since they are used in similar ways in the workouts.

So the benefit of the embedding over the one-hot encoding is two-fold: more compact representation and a vector representation that is able to show similarities between different characters. Note to self, exploring the embedding created by the Crossfit workout corpus would be super interesting .

The next layer (or actually a series of layers) is the LSTM layer. To avoid writing a novel here, here are a of resource that can explain it better than me (https://colah.github.io/posts/2015-08-Understanding-LSTMs/). It's a node that maintains a hidden state that allows it to "remember" previous inputs to the run. These cells are followed by some hidden layers. Look for a blog post soon on my page for a more in depth explanation as I learn to explain it better.

The output from our LSTM cell is fed into a final fully connected layer that is the size of our vocab (~80 characters). A softmax activation is attached to the full connected layer so that our final output is a probability distribution across all the different characters.

So, the way our network works (at predict time) is we feed in a single character, it's converted to a number (a->24). That is embedded as a vector, that vector goes through the LSTM layers (which hold some hidden state that "remember" that `a` passed through). Then a fully connected layer and softmax gives a probability distribution of the characters. I sample from that distribution, which yields the next character.

As an example (and how the site works), when you click "Pump It Up", I prime the network with the text "Workout of the day (WOD)". After priming the network (which gives some state to this LSTM cells), I take the next generated character, print it to the screen, and then feed it back into the network. Without fail, after priming with "Workout of the day (WOD)", the next character generated is "\n". The ")" character that was fed in just before would not be enough to generate "\n", but the LSTM has enough built up state to know it's time for a line break. I find that so cool and is why I went with the character model when a word-based model could likely generate workouts better.

Now that we understand the network, particularly the output as a probability distribution over the characters, we can finally talk about training loss. The naive way to calculate loss would be to feed in a character, produce a character, and then give a +1 if the produced character matched the expected character from the training text. But we can do something much smarter. Instead of comparing by character, we simply compare the output probability distributions! Yes, we can do that using cross entropy loss. This is so much more powerful than simply comparing character outputs. This loss function is both how our model is trained (propagating that loss back through the network) and how we evaluate the network a testing time.

This validation testing that I did relied on the fact that the characters in a workout are dependent on one another, but workout themselves are independent. With this in mind, I was able to randomly split up the whole workouts into a training a testing batches. I trained on a subset of workouts, then tested the efficacy of the models using the testing set. Then I summed an averaged the losses of the run, plotted the results, and ran through the entire corpus of workouts again with a new random selection of workouts. By exploiting the independence across workouts, I was able to perform cross-validation.

Did this work? Honestly, I did not see much of a divergence in the training and testing efficacy, but it was the best thing I could think of to test if my model was overfitting.


I hope this stream of consciousness gives you a little overview of how this works and my theory on testing. This will serve as a good rough draft for what I've been meaning to write for a while. I really could not match the model's loss on testing vs training to spot overfitting in the network, so maybe that was flawed. I need to continue to do research into testing on sequence data. I am doing some stock market time series investigation work right now, so I really hope to learn the state-of-the-art techniques are for validation testing on time series data, which in essence, is sequence data like these crossfit workouts.

I clicked the link and it told me "rest day" :D Nice. haha

Crossfit.com is VERY liberal with their rest days :P I thought about removing all the duplicate rest days from the training text, but I wanted to stay faithful to the original material.

I've always loved Nintendo's handheld hardware, and in the last couple years have enjoyed playing around with the Pico 8 virtual console[1]. The two seemed like a great match, so with a couple other emulator implementations as a reference I made a Pico 8 emulator for Nintendo 3ds and Switch homebrew. Its far from complete, but it now works with Pico 8 Png carts, many of which are available on the Pico 8 BBS[2].

It was much different from anything I've built previously, and it was a fun learning experience that I plan to keep working on for a few hours a week.

Github repo: https://github.com/jtothebell/fake-08

[1]https://www.lexaloffle.com/pico-8.php [2]https://www.lexaloffle.com/bbs/?cat=7&carts_tab=1#mode=carts...

I worked hard and managed to ship my first ever alpha product, https://NoteBrook.com . I am iterating on it nights and weekends to build out the core feature set and get it on every platform as published apps. It’s been a really interesting journey but I’m glad I have been working on it and moving it forward. It’s really great to see all the users signing up, and the beta version is going to really move it close to feature completeness as a first release.

I made a free word game (single player, arcade style) for web and mobile. :) Try it in a click without installing anything here:


Let me know what you think and what score you can get! There's intentionally no instructions screen (learn the game as you play) or title screen so you can get straight into playing. It's written in vanilla JavaScript.

I found this story from last month hilarious, which sums up the current mobile game trend I want to avoid:


> "I don't want jewels, cartoons, or potential dates. I want to play Scrabble against my friends and family. That's it. Nothing else," wrote one signatory.

> "They've turned it into some sparkly Candy Crush abomination," Ian Pym from Fareham, Hampshire, told the BBC. "I defy any adult to play it for longer than 10 minutes and not feel physically sick."

I'm also working on turning a web best practices guide I wrote into an ebook: https://www.checkbot.io/guide/

This is great work. Very cool stuff.

Made a new release of PJON: https://github.com/gioblu/PJON

PJON® (Padded Jittering Operative Network) is an arduino-compatible, multi-master, multi-media network protocol. It proposes a new Open Standard, it is designed as a framework and implements a totally software-defined network protocol stack that can be easily cross-compiled on many MCUs and architectures like ATtiny, ATmega, SAMD, ESP8266, ESP32, STM32, Teensy, Raspberry Pi, Linux, Windows x86, Apple and Android. PJON operates on a wide range of media and protocols like TCP, UDP, MQTT, ESPNOW, USB, Serial, RS485, LoRa, PJDL, PJDLR and PJDLS.

I am working on a new flash card app for macOS and iOS. I was tired of trying to use things like Anki or online options for language flash cards that were either hard to use or not open enough. My app is easy to use, provides stats, offers import/export (including importing Anki decks), and sync via bring-your-own file storage (i.e. use Dropbox or iCloud, no SaaS subscription required).

You can see a brief video preview here: https://twitter.com/ussherpress/status/1272638649000030208

I'm still at least 2 months from releasing. :)

I wrote an automated solution to spending requirements for high interest checking accounts. High interest checking accounts (up to 5% APR) often require a dozen or more transactions a month to qualify for high rates. Debbit automates this by purchasing 50 cent Amazon gift cards and/or paying your cable bill in small increments throughout the month.

Behind the scenes, Debbit is a hand rolled scheduler that runs Selenium automation to navigate Amazon + bill pay websites.


Excellent idea! Will be checking this out further.

Does a hobby produce a product? Seems all about 'products'. I'm working on an electric Go Kart for the kids, almost done. Its going to kick ass. Its not a product, it doesn't have a web site, I didn't write a single line of code, but I took an old gas powered go kart and turned into an electric one.

that sounds pretty cool! and not just for the kids :) how fast does it go?

The motor controller has 3 settings, Low, Med , Hi - which correspond to 16 mph, 24 mph, and 32 mph. It has a soft start mode where it won't go full power right away but ramps up, one can disable this feature. Its pretty quick but not earth shattering, it won't really do a burn out. The 9, 10, 12 year old kids think its great and drive it well (well enough). The 6 year old kids are slightly too small and don't watch where they are going - but they love it. Its super fun for the kids and more than any of them can handle yet - which is the best part. Going electric was a great idea, the kids are louder than the Go Kart, and the battery is big enough to last for hours.

I need about 1 more week to find out. I finally got the rotor and caliper for the disc brake conversion (thank you covid), I'll have that mount for that welded tomorrow and then its final assembly time. Should go around 30mph, we'll see how long it takes to get there. I went with sla/agm batteries, which is adding more weight than I'd like - but the way my kids are it needs a deep cycle capability.

Finished and released the 2.0 version my Mac video utility Claquette. It steps in where QuickTime Player is too basic and using video editing software like Final Cut is too cumbersome: https://www.peakstep.com/claquette/

I built a tool to check if an email exists without sending any email. I also created a SaaS out of it: [link redacted].

The tool connects to the target email's SMTP server, and parses the response of the "RCPT TO" command. To avoid IP blacklisting, I use Tor.

The code is in Rust, 100% open-source. The core library is here: [link redacted]

Hah, I did something very similar with MailExists [1], but not Open Source and using expensive proxies instead of TOR ;-)

[1] https://www.mailexists.com/

Aren’t Tor exit nodes mostly blocked already?

> mostly

Using Tor, I can verify around ~60% of emails. Notably, the exit nodes can connect to Gmail/GSuite servers. So it's not that bad.

If Tor's exit nodes are blocked by a server, I fallback to Heroku, where I have right now 3 fixed-IP instances. And if I see that one of these also gets blacklisted, I would have it self-destruct and relaunch, Heroku assigns a new IP on each new instance.

Does Heroku reuse these IP addresses? Can someone get them after you?

I unfortunately don't know the answer to these two questions.

* stealthcheck[0] - Service health monitoring with email alerts and automated restarts in <150 lines of code. Just create a checks.json config file where each check includes a check command, interval, and on-fail command. Set up multiple stealthcheck instances all pointing at each other for redundancy.

* quarantest[1] - Most CI testing tools focus on automated tests, but sometimes the changes are very visual and you just want to give your team a demo of your pull request to play with. quarantest runs a build for each GitHub PR, generates a URL for the build, then posts a comment on the PR with a link to the build. You can see an example of it in action here[2]. Still in a pretty hacky state. Probably would be better to use the GH status API with a link that goes to a page listing all the past builds from the PR instead of spamming comments, but it's getting the job done.

[0]: https://github.com/anderspitman/stealthcheck

[1]: https://github.com/anderspitman/quarantest

[2]: https://github.com/iobio/gene.iobio.vue/pull/497

A Go SQL Query Builder (and struct mapper).


It was created to solve one of my pain points about scanning columns into deeply nested structs. You have full control over what columns gets mapped to what struct field, no annotation-based reflection needed. The type safe query building part was inspired by jOOQ (https://www.jooq.org/doc/latest/manual/getting-started/use-c...)

I have been re-implementing the ninja build system [1] using the ideas from the "Build Systems a la Carte" paper [2]. The software isn't ready for the public yet, but I've written 2 blog posts so far about some of the ideas.

1. Using type-classes to model the expressivity of build systems [3] 2. A Future is a Suspending Scheduler [4]

[1]: https://ninja-build.org/ [2]: https://www.microsoft.com/en-us/research/publication/build-s... [3]: https://nikhilism.com/post/2020/type-classes-build-systems/ [4]: https://nikhilism.com/post/2020/futures-suspending-scheduler...

A new shell: https://github.com/geophile/marcel.

- Based on Python -- filter, transform, etc. using Python functions.

- Pipe Python values, not strings.

- Database operations from the command line.

- Run commands remotely and combine results.

I look at it as "The Call Center for the rest of us..."

I was forced to really learn my way around Twilio when everyone on the office went home.

After 3 weeks I ended up with a "React App" where all of my team can pick up the phone, 'whatsapp', SMS, and email. It's pretty cool because it turns the CRM thing around, because you start with the contact already in the system, so it's a native customer centric approach compared to older computer centric ones.

All this matched a migration into a new PWA based on React-Admin - so next to the "Call Center" are all the "admin" actions. I guess this was called an ERP. Only now it has a Call Center build on top of it.

I did inspire myself on Twilio Flex - but at $150/user/month I decided to build it myself and eject from all the plugin complications of building for a platform.

I have learned a lot, and jumped into the crazy world of VOIP. Collaborated with new colleagues and enjoyed myself building something totally new from my head to the screen.

Not a product per se, but I wrote my first real blog post. I had it stewing as a draft forever, and with coronavirus I had no excuses anymore to not finish the draft.


I also completed an electronic art project that I have been making as a gift for a friend. It is a PCB which looks like a linocut of an airport, but with LEDs on it that mimic an airport's lighting at night. Hoping to write the process that went into making it on my blog soon.

It's been a busy lockdown at work but I have finally gotten around to open sourcing my self-hosted note system that has a unique twist: every note is repeated on its own schedule (kind of like spaced repetition). I now take notes on everything I read and put them into this. I also keep track of my own diary in it. This helps me retain information better and keep mindful about stuff that matters to me.


Spent time on an extremely silly yet immensely satisfying project: https://what2cook.today

What2Cook Today helps you save time by recommending new meals with recipes.

This project came out of sheer frustration trying to think of new things to cook everyday during this lock down. Currently, the website covers primarily Indian meals but I will hopefully cover more cuisines in the future.

What2Cook Today is a side-project that was a week-long one built in my free time.

Appreciate any feedback to improve.

Thanks to the lockdown, I've finally wrapped up the long work on a Slack plugin that helps you find the location of coworkers and meeting rooms: https://www.slashmap.com/.

I used Go on the backend (rewritten from Node) and Vue on the frontend.

How it works: first, you upload a picture of your office layout using the web UI and mark everyone's locations. Then if you send "/map @JohnDoe", the plugin will return a map with the location marked on it. It works for meeting rooms and other locations as well.

Now the plugin has dozens of users and were featured in the Slack's app directory as "New and noteworthy".

If you have any questions, feel free to ping me at contact@slashmap.com :)

This is super cool! Just out of curiosity, have you thought about automating the on boarding process at all? Something to streamline the process so that you don't need to manually mark each location? Or maybe even supporting multiple buildings?

Thanks for the feedback! The app already supports multiple floors and multiple buildings. Regarding the streamlining of the process, I was thinking of something like adding an option to automatically send out invitations to everybody in the company to add their own location. What do you have in mind?

A bit late on this. But from my experience, if the onboarding is pushed onto the user, not everyone is going to do it, there might be some errors, etc... I was just thinking if there was some way you could automatically get their info without requesting it from each person.

I made Timmy (https://timmytimer.com), a social pomodoro timer with free web and mobile apps. Sort of like “Twitter for productivity.” No login required.

It’s getting a lot of use by college students and coders. Pretty fascinating to see what everyone is working on or learning. The social accountability and leaderboard are proving to be strong motivators.

Not a pomodoro person, but I really like the idea of a cute mascot helping people get closer to their goals. Good job!

Thanks! I always try to brand projects with some kind of named mascot where possible.

I created a campsite notification system that emails you when your selected campsites and dates are available to book.


It currently checks BC, Alberta and Canadian National Parks. US parks to come soon. It took a while to get national parks on there because they don't send that data in JSON, it's all html bleh.

Wrote and published a book on how to implement Sign in with Apple (https://siwa.fluffy.es) as I am an iOS dev and also backend dev, plus the deadline Apple set for it is end of this month.

Didn't do much marketing but still managed to sell 15+ copies, pretty happy about this attempt, spent 3 weeks writing it after work hours.

I recreated parts of the Windows 98 UI using CSS. https://jdan.github.io/98.css/

Nice! I've been doing something similar, recreating the original Macintosh OS in React: https://mockintosh.com

I build a Lisp inspired functional programming language for PHP [1]. Normally, I build web applications with PHP. But during the Lockdown I tried to build something different. It is still a lot of fun and I found some contributes that help me to release the first version soon.

[1] https://phel-lang.org/

I built htmx[1]: a no-dependencies and cleaned up successor to intercooler.js that lets you use AJAX, Web Sockets and Server Sent Events directly from HTML.

I began work on hyperscript[2]: a language designed to embed well in HTML, inspired by HyperTalk (the programming language from HyperCard). I hope to develop it into a general purpose programming language for the Javascript runtime.

[1] - https://htmx.org

[2] - https://hyperscript.org

Big sky. Montana? Heads up that on your website the "contact" links is an anchor href when, I believe, it should be a mailto.

I've recently written a Python app that selects a random location in an area defined by a user-supplied shapefile [1], grabs corresponding aerial imagery from Google Maps, and posts it as a geotagged tweet:


I've built this tool because satellite imagery can be extremely beautiful [2], and I was looking for a way of regularly receiving high-resolution satellite views of arbitrary locations such as the center pivot irrigation farms of the American heartland [3] in my timeline. Plus, for obvious reasons, it's nice to see the world without actually having to go outside right now.

Currently, I'm running four Twitter bots based on ærialbot:

* @americasquared, which posts one randomly selected square mile of the United States every 4 hours: https://twitter.com/americasquared

* @placesfromorbit, which analogously posts a 5×5 km square anywhere in the world every 6 hours: https://twitter.com/placesfromorbit

* @baekmanpyeong, which similarly posts a 1.818×1.818 km square (that's a million (i.e. baekman) pyeong, an old-fashioned area measure) somewhere in South Korea every 8 hours: https://twitter.com/baekmanpyeong

* @nihonmusuukei, which posts a square kilometer of Japan every 12 hours: https://twitter.com/nihonmusuukei


[1]: https://en.wikipedia.org/wiki/Shapefile

[2]: https://earthview.withgoogle.com

[3]: http://www.thegreatamericangrid.com/archives/1441

This is amazing, great readme.

Thank you – approachable readmes are really important to me, so this is validating!

I built an AR notes app on iOS. You can take a picture of an object. Create a note which comprises of a name, description, and audio. You can then just point your phone at that object and it shows you the notes and plays the audio. It’s something I’ve always wanted for myself.

That sounds really useful. I don't have an iPhone but if I did I would use something like this.

I built a new Optical Flow AI. Instead of being a cranky old man complaining about other people's mistakes, I decided to just fix things myself.

Before Corona hit, I had created a new data set and given a talk about all the stuff that current state of the art AIs for Optical Flow get wrong. I find the topic interesting, because those bugs directly lead to drones like Skydio crashing into thin wires or branches without leaves.

Plus, I needed optical flow to work for a project, but the state of the art didn't work well enough.

Then I thought "ah f* it" and so I built a new architecture that avoids the issues that I had been whining about.

Now, 36 days of training later, it looks like I might have succeeded :)


Top left and right are the two input images. Bottom center is the "ground truth", meaning the result that a perfect AI would produce. Bottom left is one of the State of the Art, according to the Sintel benchmark. Bottom right is my new architecture.

You can see that the State of the Art tends to blur the two persons together and blur them with the background between them and the frame border. My approach uses monocular depth cues to correctly segment them into multiple movement layers.

I'm not familiar with Optical Flow research, and I'm sure you already know, but are you familiar with the U^2-Net architecture (a new variation of U-Nets)? I only bother mentioning it at the risk of being redundant because it's new and I know how easy it is to miss stuff in the fire hose that is machine learning research papers. Its results for their specific task, salience mapping, are incredible for such a simple and lightweight architecture. And from a skim of Optical Flow and your example it seems like it might apply there as well. It should be able to grab the long-ranging features necessary for Optical Flow.

Do you have a public dataset that you can share or only a private one? Kinda looks like you built a dataset using Skyrim which ... is brilliant.


3d spatial video chats based on jitsi


Zettelkasten based note taking app. Uses your personal Google Drive as the backend (I'd like to add Dropbox backend at some point too) so no third party storage is needed, built as PWA to provide access from every device with native-like experience. Still some polishing to do but it's getting there.

Would be helpful to add pictures and gifs showing how it's used and a few example workflows.

I built lesstabs - a browser extension that closes and archives old inactive tabs automatically after 24h. It then lists them when you open a new tab.


Brilliant idea!

This: https://narrationbox.com/ Still adding a ton of features very frequently. Working on this out because of me and my cofounder's own misery of creating narrations, voiceovers and other audio content. idea is to create one platform for everything audio and voice marketing.

I made a small app for firefighters. The goal is to get to know your local engine while sitting on the toilet.

I released the app on the google and apple store for free. To get my investment back (time and running costs) i choosed to bill the fire-stations per vehicle. My goal here was to go as little as possible with the pricing.

The app is written in Flutter, backend a mix of spring and vaadin.

Current market are german fire stations (Most of the fire stations in germany are volunteer based)



Landingpage: http://fahrzeugkunde.hvoss.dev/

I wrote new editions (free updates) to two eBooks I have written, one a Common Lisp book and one about using Hy language "Lisp on Python":

[1] https://leanpub.com/lovinglisp

[2] https://leanpub.com/hy-lisp-python

I have also been working on physical fitness: bought some weights and also usually go on a brisk 45 minute hike near my house from about 5:30am to 6:15am every morning. I live in the mountains in Central Arizona and early morning is an interesting time to be in nature, predators [3] like coyotes and mountain lions are still out, and the birds are just starting to make their morning sounds.

[3] I usually spot a mountain lion every 2 or 3 years (not too often) and rattlesnakes about one or two a year. Lots of coyotes.

I've found adjusting to work-from-home difficult, so I've been working on Podlet [1].

The idea is to simply turn any recurring meeting into a private podcast for all invitees. Any feedback would be appreciated.

[1] https://www.podletmedia.com/

I have been collecting lot of notes and needed an offline storage for the same. I created this small utility pinotes[1] that I run on Raspberry PI. The best part is I can use browser address bar to save stuff(from both desktop & mobile). I am using it for notes, todos, grocery list, watchlists, bookmarks, reminders, etc,.

I have assigned pin as keyword, so I can use following search terms in address bar

  pin grocery!rice
  pin todo!pay electricity bill
  pin bmark!htttp://news.ycombinator.com
This creates grocery.md, todo.md and bmark.md with their content followed by whatever is after ! in search string.

[1]: https://github.com/quaintdev/pinotes

Started a crowdsourced website helping people that just moved in a new city/country to "get started" [1]. Anyone can edit a spreadsheet [2] and the infos will be directly reflected on the city page.

I've lived in several countries, and I wish there was experienced expats telling me the best carrier/area to live/gym/etc... instead of trying too many things and wasting a lot of time

[1] https://travelhustlers.co/cityfaq/

[2] https://docs.google.com/spreadsheets/d/1-Lut4zmeDw9z-ikRJPH1...

Not sure it started during lockdown, but I made 90% of some Thomson headphones mod to go from IR to bluetooth. Technically trivial but it took me a lot more time to actually do the work. Only issue right now is that I lick physical interface, need to fit usb socket and some buttons to control the bluetooth module (this https://www.aliexpress.com/item/32822579482.html I took the board from). I also had to swap the original lipo battery because it was comically small (8min lifetime) and hack a fat two-pin connector to avoid solder joints failing with vibration. So many details :)

Sound is meh but it does operate.

I've built a website to help magicians keep track of their tricks, and to give each other notes on performances: https://trick.app

And documenting how I use magic in tech innovation on my podcast at magicseth.com

I made a pinhole camera that plots 3D geometries in matplotlib/geopandas[1].

It's still WIP (need to do some minimal ray-casting to deal with depth ambiguity), but the overall goal is to develop a set of minimal camera perspective matrices that can be easily be extended for other uses (i.e I want to use my cameras to calculate geometric view factors as a way of clustering geometric features for statistical learning). Another application I've tested is to use camera and location parameters from the Google Street View camera to project OSM footprint geometries onto street view images.

[1] https://github.com/saeranv/pincam

I worked with theatre folks in my community to build an online interactive theatre show about space. The actors are all acting from home using whatever costume, makeup and set they can cobble together, and they communicate with the audience via WebRTC.

We’ve still got shows tonight and next weekend if anyone wants to attend (you can attend from literally anywhere as long as you’ve got a working device) and I wrote it all up in a blog here: https://chrisuehlinger.com/blog/2020/06/16/unshattering-the-...

I built an app to create prints (framed or otherwise) of your fitness activities.

Strava only for now but uploading GPX/KML files coming shortly.


I upgraded my 3D printer's X and Z axes to MGN12 linear rails in order to stiffen up the extruder significantly. I also switched the hot bed from glass to a magnetic pad.

I finished a PID toaster oven project from a few years ago. I've been using it to dry out filament. I also made a nice filament dry box to battle oozing.

I thought I was having anxiety over the last couple months, but it just turned out to be all the nerves in my heart electrically failing for no reason. Now I have a pacemaker. I ordered some electronics to capture my own ECG traces so I can detect the pacemaker pulses for fun.

> I thought I was having anxiety over the last couple months, but it just turned out to be all the nerves in my heart electrically failing for no reason. Now I have a pacemaker. I ordered some electronics to capture my own ECG traces so I can detect the pacemaker pulses for fun.

Hope you're feeling better; I know how scary heart stuff can be.

After my own scare (luckily a false positive) I also learned that weird anxiety problems can be heart related. Since then I've started mentioning to people that they should discuss things like that with their doctor. I know many people don't like talking about anxiety with their doctors, thinking it's more a therapist thing, but yeah it can be a heart issue and good doctors can smell a heart problem from a mile away. EKGs are quick and easy.

Thanks! I feel great now that my heart is beating normally. Apparently my heart is in perfect shape other than the faulty wiring. Amusingly, they had to open me up again because of a loose ring terminal. As an embedded software engineer, I am geeking out trying to learn everything I can about pacemakers now. Maybe when I get tired of working on drones, I'll go work on the next generation of pacemakers. Get some tweaks in the next model before my battery dies! I'm just so lucky to be alive at a time that there's an easy off the shelf solution to what would otherwise be a life ending condition.

I made a lot of music stuff. I hooked up an Arduino to control music tempo with my heart beat [1], made a browser based sequencer for the Korg NTS-1 [2], and a made a web app to generate patches for Teenage Engineering OP-1/OP-Z [3]

[1]: https://github.com/schollz/heartbpm

[2]: https://schollz.github.io/carp/

[3]: https://op1z.com/

Very cool! Why do you need the Arduino for the heart-tempo? Can't you connect the pulse-sensor directly to the computer?

Yes, I think some pulse sensors can be! The one I got is specifically for Arduino / Raspberry Pi / etc. [1]

[1]: https://pulsesensor.com

I've built McPiper - simple Gitlab CI/CD pipeline monitor from macOS status bar.

When I work I usually have emails off, so no idea when the pipelines fail.

At the moment functionality is quite basic, but it solves the problem I had.

Also plan to add other CI/CD providers (Travis, Github actions, etc) in the next few versions.

It's my first macOS app, and I've managed to learn Swift + SwiftUI, so time well spent too.


I created a simple manual budgeting app with flutter called Go Budget, which is primarily optimized for entering purchases as easily as possible, but also provides income and bill tracking/reminders and a savings goal tracker.

It is currently in beta but I hope to launch in the next two weeks.



iOS beta: https://testflight.apple.com/join/4IMtFylH

Android: closed beta - email support@gobudget.io if interested :)

A closed beta? No way to see it now?

Here's a public beta link for iOS: https://testflight.apple.com/join/4IMtFylH

Android is closed, but if interested you can email at support@gobudget.io

How'd you like Flutter?

It's been amazing. I was able to build a much nicer app in a much shorter time than in my previous attempts to build Go Budget natively, and the performance is indistinguishable from native (imo).

I also found the framework itself to have a much lower learning curve than either native platform, with almost all of the APIs being very intuitive (to me anyway). The plugin ecosystem is also very good for a still relatively young framework.

I initially had some concerns with minor issues flutter had with occasionally janky animations and slightly slow android startup times, but in the last 3 months these have been addressed and Go Budget now works better than most native apps on my Pixel 3. iOS testers also report good performance/feel.

I would highly recommend it for any CRUD/data driven app, and honestly think that its capabilities for more hardware-specific apps are maturing nicely.

I've been doing woodblock printmaking - https://www.instagram.com/garyprints/

Those look great! Woodblock seems like a really rewarding medium.

Yeah, it's really satisfying, even for quick experiments

Mostly I have been working on a software project called TeXnicard, which is not yet complete, but a lot of things have been done, as can be seen from the timeline view of the Fossil repository. In doing so, I have found a bug (#702472) in Ghostscript, having to do with the printobject and writeobject operators. I both reported and fixed this bug, but have received no reply from Artifex about it so far. (The patch is currently included in the TeXnicard source repository, in the file called "gspatch.txt".) I have done some other things too, such as some improvements to ZZT (such as listing the date/time in the restore game menu), but the thing I have been working on most is TeXnicard. I have not done any hardware projects, though.

Some of the other ideas listed here look like interesting ideas too, although I don't always like the implementation. (I suppose that isn't so uncommon; that is why there are many different programs and other projects for similar purposes.)

But, occasionally I have played GURPS using the internet. Before the lockdown I was not doing it on the computer, but now I am sometimes doing. Since I am the only player, I simply used a direct connection; I wrote a shell script containing a command like this one:

  ts '%.s>' | tee -a send.log | nc -Clvt 12345 | ts '%.s<' | tee -a recv.log
We then coordinated the times with email, and he sent a bell to my terminal when he was ready. And then, I can just use "cat" and "sort" commands to produce a full log.

I made a web app [1] to quickly create collections of keyboard shortcuts that can then be learned and trained.

I didn't like the pre-defined drills of existing shortcut learning software, so I tried hard to make it as seamless and efficient as possible to create personal collections of Keyboard shortcuts and text snippets. They can be imported from a public shortcut database or defined from scratch.

From there, you can practice your shortcut collections with the goal of memorizing them and getting faster and more accurate. It even calculates a confidence value for each keyboard shortcut in your collections based on your training performance.

I am using it myself extensively and have learned a ton of new shortcuts and have eliminated bad habits. Made a blog post (during lockdown) about my complete collection of shortcuts [2].

However, some of my first users seem to struggle with the concept of having to build their own collections. So I am learning a lot about product design and user onboarding right now. This is quite exciting for me as I am working mainly on Java Backends in my regular job.

[1] https://keycombiner.com

[2] https://tkainrad.dev/posts/a-collection-of-all-keyboard-shor...

I've been working on making my YouTube channel actually useful/updated, and somehow triggered YouTube's algorithm with my Turing Pi (Raspberry Pi compute module) cluster: https://github.com/geerlingguy/turing-pi-cluster

I've also spent a bit of time cleaning and rearranging my workshop, and redoing a bit of my office for better video conferencing and streaming.

I've been fairly productive especially in the first few months of lockdown.

1. Chart based commenting system for Chartio https://chartio.com/blog/charts-worth-commenting-on/

2. Helping the https://howwefeel.org team with their data and dashboards https://how-we-feel-chartio.herokuapp.com/the-how-we-feel-pr...

3. A number of hydroponic experiments including with lettuce https://img.chartio.com/nOueDAy2 and even trying corn https://img.chartio.com/NQugK2G0

4. Finishing a book on Data Management that'll have a dead tree edition published later this year https://chartio.com/blog/cloud-data-management-book-launch/

5. A few small wood projects like a planter bed and a projector mount

Just before lockdown I started a product management role at a scale-up in the UK, and to get a wider perspective of product and advice from people who have been through it before I've been chatting to other people who have built product teams. I've kicked off a blog to share what I've learnt from these conversations. Hope it's of use to others who are on a similar path!


I made a command-line utility to download books from a Goodreads reading list using Library Genesis: https://github.com/goodlibs/goodlibs

(Since libraries have been closed, I used it to download my entire reading list. As I read through the books, if I find one I particularly like, I order a hard copy for delivery from my local neighborhood bookstore to support their business.)

Nice! I've always wanted to download a massive bunch of books and explore them randomly.

I built a habit app called SnapHabit [1] that helps you build habits with your friends/family through group habits and through social accountability.

I wanted to learn React Native/mobile development while trying to address the fact that for many of us, social distancing and lockdown have isolated us and destroyed our everyday habits.

The most interesting thing I've seen is that people really enjoy writing about and reading each other's mundane updates. The app has a notes feature which automatically sends out updates to everyone you've shared a habit with. But because the update is tied to the habit, people seem more comfortable writing more personal updates; it doesn't feel like bragging, annoying since it's not traditional social media where you're writing for an audience.

Some other observations and learnings I picked up while building it:

- I love React Hooks. IMO, React is a lot more natural to reason about and to learn with hooks compared to class components. The entire app only uses hooks.

- I used Expo and it's been mostly great. They take care of builds and OTA updates are super useful for iteration and moving fast! Cons: Expo updates too slowly; some bundled modules have been stuck on very buggy builds for a while and you can't do anything until Expo updates its modules.

- Sending too many network requests will slow down your app because of React Bridge! I used Firestore which encourages making all requests on device via the client SDK. But React Native handles network requests natively so everything needs to be passed back and forth through the bridge, causing a lot of slowness if you have too many/large requests, so the Firestore way doesn't seem to work well in React Native. Instead, off load requests to a server so that you're making a single (or small number) of network requests.

- Don't use React context for your app data! Changes to the context cause everything that's subscribing to it to re-render. I was using context for each day update, meaning every update caused all the other day-s to re-render. Redux is still a great solution and redux-toolkit has really helped reduce boilerplate and the friction to get set up.

[1] https://snaphabit.app/

Good on you for jumping in the deep end to lean React Native and thanks for the advice. I just downloaded your app to take a look at it and it’s really well done. I’m actually going to play around with it for my own personal goals for a bit.

I've tried a couple habit apps and surprised at how complex they are (it's a binary track). You kept it pretty simple, nice work.

Are you using React Native Firestore, or the JS SDK?


I created Covid Dashboard for Indian states and cities.

I am from a small town in India and I couldn’t find a way to track Covid cases, deaths and recoveries for last 3 weeks. Also, I am scientist and loves to work with Tabular data.

I needed to put this website to show some authorities of my town how the spread of our city is as compared to other cities historically. And it’s been working out pretty well.

My friend and I built essentially a REPL for your Firebase Cloud Functions - https://github.com/FoundryApp/foundry-cli

We feel like building backend takes a lot of unnecessary work that really isn't coding. It's usually all those different things like setting up your environment, running multiple containers on your machine, figuring out how all different services should communicate together, fetching your production data. So we wanted to simplify that. Ideally, one would love to develop in an environment that is basically a copy of your production environment. The same goes for data.

Our CLI tool gives you an out-of-the-box cloud environment for developing your Firebase apps. You start Foundry on your local machine, we watch your code and every time you save your files we trigger your functions in the cloud environment. We give you feedback right away. So it's kind of like REPL in a sense that you always get feedback on whether your code will work once you deploy it or not.

We also emulate both Firestore and Auth Users and make it really easy to access your production data. In our YAML you specify what you want to have available in your environment and we fetch the data for you.

We don't save any data.

Here are the docs - https://docs.foundryapp.co

GitHub Repo - https://github.com/FoundryApp/foundry-cli

No surprises from me: I launched v8 of my HTML5 canvas library back in April, which the admins here very kindly promoted to the front page of HN for a couple of hours - https://scrawl-v8.rikweb.org.uk/

Since then I've released some updates to the library. Things I've been working on include:

- Adding a "polyline" entity (which, I hope, can be used for freehand drawing) and fixing the path animation code so things can be moved along a path at constant speed - https://codepen.io/kaliedarik/pen/MWadEwm

- Tweaking and improving the "phrase" entity (for graphical text) to make it easier to add styling markup to it, plus some stuff to make it look better when animating along a path ... though sadly there's still an (very!) annoying text height bug that needs to be addressed - https://codepen.io/kaliedarik/pen/dyYeOZb

And for the past few weeks I've been investigating/learning about physics engines. Because what's not to love about physics engines? I'm not close to releasing code for this yet, but I did manage to get the library to play nicely with Matter.js as part of my learning experience (the polylines add a nice touch to the net, I think) - https://codepen.io/kaliedarik/pen/zYvbwBy

I've started to scratch my own itch, trying to improve the audiobooks streaming experience.


I've got enough validation to think there's a market for it, especially in the Plex community. So for the MVP, the server acts only as a layer between Plex and the client. This allows me to build a great audiobook player and add features on top that Plex is not capable of.

Hey DrMonkey, happy to hear someone is working on a better Audio book Player. I will try this out though I’ve never used Plex. I love audio books and have a few hundred on my Audible. I wanted to throw out some feature requests (feel free to ignore them) based on my audible experience:

1) note taking should not require having the book downloaded.

2) notes should be exportable

3) I’m constantly looking things up while I listen to non fiction. I think a visual stream of images tied to pronouns could be amazing. For example, when I listen to the history of ancient Egypt and it mentions Ramses II or all these tombs and tablets, it would be great to see thumbnails based on recently listened to content.

Anyway good luck!

I've the same itch with ebooks/papers (pdf, epub, azw3, etc). It's impossible for me manage them and keep them portable. Great work! I'll definitely check this out. The logo is lovely too.

I documented how to do some things on my Honda, and am learning how to make postcards the exact way I want them



What do you mean “learning how to make postcards the exact way I want them”?

I want to be able to put the images I want in the exact place that I want with cut lines and the like; I also want mail merge to work correctly.

I also want duplex color printing. I'm fairly close; Microsoft Publisher almost does what I want. I may end up writing a PDF generator or something.

I'm using A4 cardstock (for now) and the postcards need to be 6" wide and 4.25" tall. I print the image larger than that, so that I get full edge-to-edge printing.

I bought a paper cutter[0] to get the clean edges I want. Getting the mail merge to work how I want is a struggle.

Do you have suggestions? Any PDF generator I could feed images and restraints to and generate a printable PDF from zsh on my Mac, or WSL2 on a Windows machine, would be awesome.

[0]: https://hardwarefactorystore.com/products/17-heavy-duty-guil...

I made a website for people to play and prototype/playtest board games digitally

  - online, multiplayer gameplay
  - rules are enforced (using a DSL)
  - customize the look and feel using WYSIWYG editors
Proof of concept implemented using the system: https://turn-base.com/games/lobby/22/

I made myself a video game addiction. Went 10 years without playing anything while the friends I grew up with glowed about the virtual adventures they went on, urging me to play with them. Now I'm 628 hours into Fallout 4 with multiple level 200+ characters on the hardest difficulty settings. It's been a blast and I can see why that game was praised, but soon I'll have to take back control of my time.

I launched http://belgianbrewed.com where you can find the most belgian beers online.

We launched early, since suddenly users were ordering on the beta environment. Product descriptions are not complete yet ( > 900 products)

I had some webshops before ( on woocommerce), but this became pretty big in a short time. It's already sold to my supplier ( who is a good friend off mine), but I'm still shipping new features.

The latest thing I added was E-commerce-filters.

Next one is "suggested products". And we are onboarding 2 breweries that moved their E-commerce from their own to belgian brewed.

I'm also redesigning the backend currently for seperating the backend to a "cloud" one and transforming it all to DDD.

Within a month, I'm planning to start my second shop on the platform, for a totally different use-case, as I'm "picky" on the clients to onboard first.

Since I need them to request totally new features, so I can expand functionality.

It's. Net currently with plans to move to. Net core ( I'm much more productive in .net framework currently, I hope that changes soon)

I've improved Trivabble, a libre network scrabble game. I built it 3 years ago for my grandmother so she could play with my mother and my sister, living in another area. It was still on, but I had more or less forgotten about it, and then I started to receive thank you emails at the beginning of the lockdown. That prompted be to invest a lot of time on it during the lockdown.

I've seen many days with at least 100 games played during the lockdown, but I haven't set up proper monitoring for this.

Now, people have been contributing to the project since then. Thanks to one of them, there is support for many languages now.



(be gentle, this runs on a cheap VPS)

I thought about making a chess and a checkers version. I made an experimental fork for the latter, and Lichess does the job for the former so I don't plan to make it happen for now. But the code would benefit from this work.

I wrote a simple "disaster-ready[1]" site for physical distancing, called the virtual bulletin board system. It is currently in operation in my city but nobody uses it. I tried to get it off the ground but I'm not really sure how to do it.

Basically, I think of it as a "geowiki" - a wiki where each entry has an address and a lat/lng associated with it. Here's a screenshot: https://i.imgur.com/RiCiuDi.png

I went on the radio on a call-in show, I advertised it on the local city Reddit and their discord server, but it didn't catch on - at all. Except for a couple of vandals who deleted all the entries :)

It was fun, but it would have been a lot more fun if people had actually used it. I still might try to get it off the ground again, but I don't know how off the top of my head.

[1] What does disaster ready mean? It means that the site uses very little resources for the browsing operation. It is all static HTML/JS/CSS and uses cgi-bin (!) for the admin side/adding a new listing.

link please?!

I'll shoot you an email, since you've got your email in your profile :)

I made an LED simulator!

I've been building an ESP32 LED framework for a couple of years, and thanks to some great advances in AVR emulation, we can now emulate an Arduino in the browser and preview the patterns.

I also made it into a desktop app that can flash a new firmware to a real device over wifi. Super fun.


That is really cool! I haven't messed with it in a while, but I went through a phase of doing lots of LED projects for camping/festivals/burns/etc. when those were still a thing.

As a noob coder also using this as a way to learn some stuff, a simulator was high on my list of things I wanted. Sure, I could tweak a program, upload to some little Trinket or Arduino, fire it up and see what happened, but it would make things a lot easier on the "learning basic Arduino code" side if I didn't have to build the whole thing first.

That's exactly it - all the setup is quite daunting when you're getting started. The framework also lets you control your LED patterns from an Android / iOS mobile app, which is really hard to do yourself. We're working on producing LED panels to use with it - though of course you can also DIY.

Nice! You might enjoy looking at my ESP8266 Wifi Streaming POV poi project, with emulator:


Made Taskeera[1], a service for registering, observing, and monitoring all of your background jobs. Still working on some details and I will open-source a prototype soon with full details on how to self-host it your self.

Let me know if you have feedback or if you wanna take a look on what I've worked on so far. :)

1: http://taskeera.com/

Fruition (https://fruitionsite.com) - Build your next website or blog with Notion, for free. Notion has taken over the tech/design industry by a storm, and many people have used it to create web pages. However, Notion doesn’t allow custom domain and the page URL contains a long uuid (for example: https://www.notion.so/The-Beauty-of-Notion-4663b221fd154c07b...)

I built Fruition to solve exactly that. You can use a custom domain and add pretty URL slugs like https://fruitionsite.com/showcase. You can also add custom font and scripts like Google Analytics. It’s all free and open source.

I shared this on a couple of Notion communities a month ago, and 40000+ people have checked it out since. Hundreds of sites have been built with Notion and Fruition.

Primarily found new energy to put into my open source projects. Dusted off one of my old charting projects and modernized the build & documentation. https://www.chartjs.org/chartjs-chart-smith/examples

Just before everything got locked down I wrote an implementation of the circuit breaker pattern in python. The new concept I added was the ability to customize how the breaker resets. Rather than simply resetting the breaker as soon as a request succeeds, I provide a way to have the breaker in a fast-fail mode until the net error count (errors - successes) reaches down to 0. https://github.com/etimberg/pycircuitbreaker

I also did some Ham radio stuff, but my apartment doesn't have a balcony so I have no where to safely solder anything.

I created an online academy where I publish growth marketing resources to help startups grow from 1K to 1M - https://academy.pallav.io/

I've been meaning to do this for the longest time but couldn't keep my blog super active. In this regard, the lockdown was a blessing for me.

Very interesting, defo interested in this space

I built

NeumNotes - A Simple Neumorphic Styled Privacy First Notes App: https://neumnotes.com/

And GitRelevant - Search The Latest AND Greatest Github Repos by using multiple filters: https://gitrelevant.netlify.app/

Design for NeumNotes is really nice.


I rebuilt my side project in Vue. It's meant to be an API generation tool for .NET Core. Basically provide a swagger definition and it generates a ready to run solution based on that definition. Still working through the details but it works on a basic level now.


I made a tool for visualizing text in 3D: https://nebulate.ai

It runs a machine learning model in your browser to convert the text into points in a high dimensional space, and then it projects those points down to 3D.

Right now you can tell it to visualize post titles or comments from any subreddit or tweets from any Twitter user. I find it especially interesting to explore the news with it since every article is naturally presented alongside other articles that are about similar topics, often giving useful context.

Only works in desktop Chrome right now unfortunately. I was hoping to make it Firefox-first, but I need an API Firefox hasn't implemented yet.

Since the model runs on your machine, the "running model" stage will be slower or faster depending on your local GPU. If you have a decent GPU, I recommend bumping up to 512 points.

Would love any feedback! Here, on Twitter (@gradientassent), or in the Discord channel linked inside.

What do you use for the browser ML? An existing framework (tf.js?) or DIY?

TFJS, yep!

I put together one of my first big self led projects! It's a windows application made using Qt that let's me set directories as favorites, then you can create and open files in the selected directory.


I've started a story/tutorial blog about the technology necessary to survive on other planets www.martiancastaway.com. It's something I've wanted to do for a while and is primarily focused on control theory right now, but I've just started on the next chapter that is focused on more hardware development aspects.

Covid tracker for my home state + an API to get data for other states.


Cranked it out in a couple weeks and the code made me sad so I haven’t touched it since...ugly UI, bugs, etc

Also started back on an IoT soil sensor project.

Need to finish editing a book but tech provides an excusable distraction !

WOOF! Sometimes it doesn’t load the MS data because the website I’m scraping changes their tables. I get the data per request...never got around to scraping it and saving it from a DB, which would be more reliable even if they changed their HTML markup

I made an Android app to do the same at the beginning of Lockdown for my country, South Africa. Was quite a cathartic experience. Just being an observer helped me to deal with the situation...

Then the guys doing the data moved their table and broke my app. Lucky I found a more reliable source. The app still works, I check it every morning. Anyway I found an international api here: https://github.com/ExpDev07/coronavirus-tracker-api - even started making a world map but moved on to other things. Code is on my site - https://www.circusscientist.com/parsing-online-corona-virus-...

Cool! We had the same idea with the NYTimes data :)

A friend and I made an app for photo memos. The idea is to use it instead of the camera when you just want to remind yourself of a thing. Originally we wanted to challenge ourselves to write the app in 24 hours, but it predictably stretched out (quite) a bit.


I worked on a website that aims to foster data-backed debates online. It builds a feed out of hacker news comments backed by data. [0]

The reasoning behind it is twofold: - They are people who (due to their through their startups, side-projects, thesis, hobbies,...) are familiar with interesting datasets. - With a tool that allow them to spot places on Hacker news where data are discussed, they will be incentivized to contribute and experience less friction.

I hope it increases the frequency of arguments linked to data and give more visibility to projects working with interesting datasets.

I am also looking for people who have projects, however small, where they see interesting data. It is for an ongoing interview serie.[1]

[0] http://datapeek.org/

[1] http://datapeek.org/interview/alfadata

Lots of loose ends still and nothing noteworthy to the extend that others are posting on here.

But I finally got around to reading up on a topic I've been curious about (causality modelling, causal inference, causal discovery) and started writing a little about it. The couple of interactions I gleaned from doing so have been very refreshing and are a great driver to continue down this path.




Nothing of any importance. Managed to screw myself up to the point of having constant generalized anxiety, so yeah, things are really working out here.

If you're having a panic attack, run up a flight of stairs, or hop on a bike and do a sprint around the block. Get your heart pumping.

It sounds really counter intuitive but it works.

I agree, kind of. I have also suffered from panic attacks and the problem with this is that I'm thinking that I'm about to have a heart attack. The mere thought of running makes it worse. Breathing exercises (this has to be practised in advance) helps for me.

> I'm about to have a heart attack.

That's a real panic attack. Drinking cold water can help reset the loop causing it (worked for me maybe once). The only thing that really works for me is GABA (700mg daily for a year, then 250mg daily for life) - but it did come up short in my blood work.

> reset the loop causing it

Yes! Recognicing that it is a feedback loop is probably what has helped me the most. This is weird, I love controll systems and I see feedback loops everywhere in all kinds of contexts. Yet spotting this one was very hard.

Benzodiazepines are a real treat (as in "works a treat"). Highly addictive tho.

They're great for acute panic, but are not a solution to a chronic problem. Research shows that some antidepressants and 5-HT1A agonists work in the long term for anxiety, though.

IMO, there's nothing better for a panic attack than benzos. It's nice to have them around for an emergency. However, they will be the death of your mind if you take them on a schedule.

Yeah that makes it hard to motivate yourself to do it.

For me it's the stubbornness/trying to diagnose my hardware approach of:

well I'm either having a heart attack or this is just anxiety - so I can force the condition by doing this bike sprint and that will give me valuable information.

Calling a friend or an acquaintance can help to alleviate the attack, too.

I don't suffer from panic attacks, but I wanted to mention that I have found that splashing cold water on my face seems to have a very "wake up / reset" effect.

I get a pool of cold water in my hands, lean over the sink, and kind of face-plant in the pool.

(A quick cold shower works even better, but is more involved.)


The thing about panic is that your brain associates the physical symptoms with that unpleasant state, such that feeling those physical symptoms in a different context might cause you to panic.

Had a bout with anxiety in the past, and an elevated heart rate from exercise would sometimes trigger it later.

this is a vey sound advice. A pandemic project which can’t go wrong is exercising more (even indoors). Start small, then make it a habbit.

Hang in there. These are strange times and the most we can ask of ourselves is to get through them.

"Little things", like kind words, are not insignificant. Thanks, sincerely.

(Note: if you feel that this is just "regular" anxiety and it can pass, my wall of text is something you can skip. Only thing that should be considered are developing coping skills! I'm just trying to be helpful.)

I'm thinking you'll reach the end of this dark tunnel here soon - but with a bit of work! The posters here have been thoughtful and there's a lot of good stuff to consider - I may be able to touch on this from another angle.

If you have the funds, I would strongly encourage you to see either a psychologist or psychiatrist. I have suffered with clinical anxiety and regular panic attacks for over a decade. Unfortunately, I was diagnosed with Bipolar 1 and Psychosis about 2 years ago, which are very rough and sometimes "team up" to make my existing anxiety/attacks worse.

Even though this "teaming up" effect has been given me more anxiety than I can handle... trying out a 1 or many medications, reading books on coping skills/etc, and putting in the effort to test out said coping skills are great for many people.

If you don't want to go this route, I would at least spend some time looking into and testing out various coping skills. You can use them as soon as things are headed in the wrong direction. This approach will also help if you have non-clinical anxiety as well.

note: not a doctor... just a "patient" and can relate :) - I think you got this!

You make very good points and I concur that getting professional help helps a lot - from past experiences. It seems that most likely I exhausted my coping mechanism pool, and if the state continues to deteriorate, I will most definitely reach out to some professional. Thanks!

"It seems that most likely I exhausted my coping mechanism pool".

Been there, done that! I have about 10 "core" mechanism that have stuck, but some stop being effective because I needed to change them up to make it more suitable to address my suffering.

The psychwards I went to before my Dx/meds taught (DBT) (Dialectical Behavior Therapy) it's more about coping and life skills to execute on. You can also find therapists that practice with this modality. In a nutshell, DBT is all about "mindfulness" and "skills" (basically more involved coping mechanisms). It's more "actionable" than regular CBT in my opinion - but I'm biased.

You can skip the DBT therapy and look up all of the skills and practices on your own too. It's good to have a professional as a therapeutic guide and hold you accountable, however. I won't go too far into that, but you have to track "bad habits" (PG-13) and if you followed through with what you set out to accomplish for you illness.

Also, if you're in the US, you can freely/anonymously join the local DBSA (Depression and Bipolar Support) meeting. The name is misleading though - it's basically for any mental or "advanced" mental illness. My sample size is 1, but their were folks in the meetings that had debilitating anxiety / anxiety disorders soo..

I'm sorry you feel that way. There's tons of positive advice in reply to you, so I'll say follow them. I know I will, I'm in a tough spot myself having graduated and still searching for my first job. The anxiety and restlessness have started to take a deep toll on my feeble mind. Not having a large social media presence doesn't help since I can't share my thoughts with people either. We'll get through this together :)

I'm sad to hear that you feel so anxious :( Exercise helps a ton. So does therapy (cognitive behavior therapy especially). Mindfulness meditation can help a lot, too.

It feels... guilty not to do something productive; like work. Or something showcase-worthy. I guess it also has something to do with "turning off" when working from home: it's like you have to give 120% every day until you can't and then the downward spiral starts. Home becomes office, and slowly, creepingly all becomes work and, well, I guess one just have to remind oneself that taking care of yourself and "turning off" is not only okay, but necessary. Just like food.

One thing that I feel has helped my anxiety a good deal is knowing that "It's OK to not feel OK." A large part of my anxiety is wondering about its source and if it's getting worse, etc.

Secondly, I've worked from home for 6 years now and the "turning off" thing is very important. Not only is it unrealistic to have those expectations of yourself, it's irresponsible to do so.

If you feel guilty about not working, just remember that often times the time you spend not working on a problem is just as important as the time you spend working on it. It's actually how you tend to come up with most creative solutions.

Not only that but you deserve time off.

I feel you. Had come into lockdown with a laundry list of stuff I though I could finish because of gained time. Very little has materialized. A thing that helped was bringing in another person to check on each other.

It's not strange that you weren't productive during one of the most disruptive periods of instability most of us will likely experience during our entire lives. Some people have made a positive out of this experience but you shouldn't feel like a failure if you couldn't.

You may badly want to be one of these people who emerges from lockdown in an amazing new body with all of these projects completed but you shouldn't feel like a failure if you couldn't. This was not a normal time and adding pressure to be productive is not the answer for everyone.

Sorry to hear that. Same though. Things are spiralling in the wrong direction and I just want peace and some people to talk to here and there without politics hijacking the conversation.

Email is in the profile if you wanna hit me up.

I'm with you. I look at what I've done with all my "free time" and I can't help but think - maybe I can't cure cancer, but I could have helped the person that would?

That sucks. I highly recommend the book "Anxious" which is about the neurobiology of fear and anxiety. Reading it feels like reading the owner's manual to my brain.

Haha, same. I’m a mess.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact