I built it because I frequently find myself looking to onboard (or “reboard”) to a project, and not knowing exactly where to start. After speaking to a bunch of other developers, I didn’t seem to be alone, so it felt like this problem was deserving of some attention.
While documentation can help mitigate this problem, I wanted to explore ways that the codebase itself could become more explainable, without requiring unnecessary context switches. Almost like if every repo had a table of contents. To make it easier to produce these “code tours” I built a tour recorder, that tries to be as simple, and dare I say, fun to use as possible.
I’ve since found that this experience has value in a number of other use cases (e.g. simplifying PR reviews, doing feature hand offs, facilitating team brown bags, etc.), and I’m excited to keep getting feedback from folks as they try it out. It’s also fully OSS, so I’d love any and all contributions: https://github.com/vsls-contrib/codetour.
I’ve always liked that approach, and thought it could be cool if you could do the same thing for any body of code (not just PRs!), and also enable the comments to be ordered, so that the “tour” itself is entirely guided.
Note: Other side-projects on my journey to improve the holistic developer experience:
1. GistPad - Developer library for managing code snippets, documentation and interactive CodePen-like playgrounds. All built on top of GitHub Gists (https://aka.ms/gistpad)
2. Live Share Spaces - A virtual team room for connecting with other developers, and being able to seek and provide in-editor assistance in real-time (https://aka.ms/vsls-spaces)
Awesome idea!
Also intellijs support for databases and symfony is vastly far out ahead.
It takes time to derive the high-level from the codebase. I guess, your walk-throughs would be similar to how I'd explore it myself - without the mistakes.
EDIT it's documentation, so can get stale/out of sync as the codebase evolves (not a problem for PRs). Though high-level architecture/APIs rarely change.
BTW In github, I keep expecting the text next to files/dir to be a comment explaining the high-level (instead of the most recent commit message).
Regarding the comment about tours becoming stale: when you record the tour, you can choose to associate it with a specific commit/tag/branch. That way, when someone plays it back, it will continue to make sense, even in the midst of minor code changes/refactorings.
I’ve also been working on making the tour editing experience as simple as possible, so that as you need to revise the tour over time, it’s not too difficult to do.
That said, any artifact that’s a derivative/compliment of code (e.g. documentation, tests), represents an additional “burden” to maintain. So I’m focused on trying to keep the tours “stable” enough to support learning, and reduce the cost to editing them, to hopefully support the continued investment.
I’m semi-hopeful that there’s a nice balance here, that provides an enjoyable enough DX, coupled with the team’s motivation/benefits to retain and transfer such important knowledge. We’ll see how it goes!
I guess navigation uses VS Code to locate functions etc, so it's robust to superficial changes (like ctags for vim).
Keeping docs in sync is a hard problem!... \tangent: maybe a tour draft, of execution trace of a typical use, filtered to only key api calls?
Would that satisfy what you’re thinking? Or were you thinking about being able to record a tour, and mark certain steps as being more important than others? Any feedback here is unbelievably valuable!
You get this 100% up-to-date trace for free. It's crazy verbose, so apply filtering (e.g. to only key apis) to make it manageable. Then edit that draft manually. Like an annotated, abbreviated, step-into debugger.
My thinking is that this makes it easier to get an initial draft. But maybe that basic trace is easy and natural to do manually?
Also, I'm not sure how similar this "execution trace" would be to a tour based on explaining it... I suppose you could find out, by examining your best tours to see how closely they actually follow execution order (if at all). When I try to understand a codebase, I do trace calls manually, so there's probably some similarity.
Though multiplicity of tours is also complexity!
The only limitation is that it's VS Code only. But, the JSON output means I could easily write a script to produce HTML that could be hosted for other devs to view.
That said, I wanted to record the tours in a simple JSON file, specifically to enable interop with other tools. I’d love to hear any feedback you have on the experience and/or the format!
That said, there isn’t a way to automatically know when a tour should be updated, after a significant enough code has changed. Being able to bind a tour to one or more tests is a really interesting idea, and something that I’ll try to explore this upcoming week. Thanks so much for the feedback here!
That said, I’m trying to keep an open-mind when it comes to increasing tour resiliency, since it may require language/platform-specific solutions. I’m not sure. If you had any thoughts, I’d love to hear them!
Another potential solution is to have a CI task, that could check to see how far the code has deviated from the original commit that the tour was recorded on, and notify you when the deviation crosses some threshold. Maybe that’s a terrible idea, but something like that would have the benefit of being language-agnostic.
Lots of exploration to do here!
I love seeing other folks investing in this space. Thanks for sharing!
Note: If anyone’s reading this, and has experience in Vim “extensibility”, I’d like to collaborate: https://github.com/vsls-contrib/codetour
FOSS: https://github.com/zackb/forcecode
only TestFlight right now but AppStore soon under the name "Force Code"
It could be incredibly useful to not have to pick up a phone to use, and probably would not be that difficult to port over.
If you need help, testing or advice feel free to contact me at claire at theoic dot me. I’m a bit of a Watch nut and do iOS programming for a living.
One of my ideas is exactly using morse but more as a means to demonstrate a way to make a new input method learnable via a HUD.
Apart from that I'd think you might be interested in Dasher and that you should check out the solution that Stephen Hawking is using which happens to be open source.
I've put in quite a lot of thought into this and would love to discuss this with you. If you are interested please use contact form in link below or let me know how I can contact you.
Thanks!
The problem? Tweets are easier to read than long-form essays, as they require less time commitment. If the content is not good on a long-form article, you'll find out way too late. With this tool I'm developing:
Layer 1 is the shortest version of your essay, the 1 min read — like a tweet. The idea boiled down to the shortest version
Layer 2 is the same text from layer 1, but with extras added here and there. What's already read by you is in black ink. What's new is in blue ink. This is the 2 min read version
Layer 3 shows everything from Layer 1 and 2 in black ink, but what's new is now in blue ink. and you keep doing that until you get to the full version.
I can post some screenshots here of my mockups, as I'm a designer. PM me if you find this intriguing!
——
Edit: Since people are showing interest, here's how I see it happening — https://invis.io/GQWINO2YKU2#/410298082_1_Min_Verison
The first thing that you see is the first layer (1 min version). Go right for 3 and 5 min version!
——
Edit 2: since I'm seeing the upvotes and the emails, I quickly made this sign-up form for the people who want to be updated when the product is done: https://layered-ink.webflow.io/
I would put up the https://layered.ink link but the domain hasn't been propagated yet.
@Admins — please do let me know if this is not permitted so I can take it down. Apologies if so.
Here's how I see what I described earlier: https://invis.io/GQWINO2YKU2#/410298082_1_Min_Verison
What do you think?
Here's how I see what I described earlier: https://invis.io/GQWINO2YKU2#/410298082_1_Min_Verison
What do you think?
The original motivation were layout considerations for printed newspapers with limited space. With all articles pre-written like that, an editor could arrange them on the final layout and cut off at the end at discretion while keeping the most relevant information given the remaining space.
That being said, I don't think this is too relevant for your idea, just an interesting anecdote.
However, I am curious to know what the tool does. In other words, someone can write a “thesis statement”, and the bullet points and an outline and so on in any editor. What does the tool do?
1. Let people brain dump — write everything they've got on their mind. Click "new layer". Cut down on words. Click "new layer". Cut down on words. Repeat ad nauseam.
Every time you write a new layer, you're "editing" your article so as to make it shorter. In other words, you're purifying the idea
2. Let people write the shortest version, then write a bit more, then more.
I'm doing way #1 because I feel like road #2 prevents people from having a brain dump... I'd lose all my ideas if I'd start with the short verison
Brainstorming, well, "everything is a graph", but perhaps picture versions as columns, with each column showing all three levels, with transclusional editing between them. So you do a pass in whichever direction, create a new column, and easily grab material from previous variants, and repeat.
Within a column, editing text in any level, updates that text in any other level it appears in. That's the transclusion. Since all levels are said to have a copy of the most-brief text, if you edit that text at any level, it's updated at all levels of that column.
When you start on your next column/version, you can easily grab text from previous version(s). And you might do that in different styles. If you copy the entire column, then the old column serves as a checkpoint, and the new for continued editing. Or copy just the most-distilled level, and then work downward, to "reconstitute in a more crystalline form". Or copy just the least-distilled level, and work upward, attempting a new distillation.[1] Or do these from a previous column instead of the most recent one. And the old columns/versions are easily accessible, to browse for inspiration, or to grab stuff from.
[1] Hmm... I guess copying just the least-distilled text "forgets" what the embedded more-distilled text regions of it were previously? So one can try playing with the "brain dump" text again, without the distraction of the previous distillation choices. Then when things settle down again, one can highlight "this region is now distillation level n".
For UI, perhaps highlight-drag-n-drop to more distilled levels? And if each level say had an "X" - delete and forget this level, then the different styles of column copying unify as "fully copy a column, and then X-away the levels/region-choices you want to discard"?
So... All levels simultaneously visible, and easily edited together. And multiple versions of them easily accessible, in support of doing multiple exploratory passes, with each pass able to easily draw from past attempts. And working in either direction: towards distillation, or building out from a more distilled seed.
That was the brainstormy vision anyway. I've no idea if it would work out. And for whom - I work in both directions (back and forth), and like a visual record as external memory (so I don't have to remember things or take notes), and like to just see it all (without view switching). Someone who doesn't want those, might find multiple columns to be distracting clutter.
Thanks. The bottom-up journaling style of use [1] looks tempting, even as someone who generally prefer graphs to trees.
PayWhatYouWant[2], but it seems a pity one can't easily play with it non-persistently, without giving them an email? I wonder if that's the right choice, funnel wise, for something with a "I can't imagine using it... oh, that's neat" dynamic.
[1] https://www.youtube.com/watch?v=sT_nlmlbhBE [2] https://gingkoapp.com/p/pricing/
It's essentially the reverse way of what writers do when they write the "tweet version" of their essay — plus all the steps in-between.
@ your last sentence: Check out the InVision link I've added to the OP!
[1] https://m.signalvnoise.com/the-writing-class-id-like-to-teac...
Indeed, there are problems with Twitter, people take stuff out of context and like to be polarized. But just as you say, the first time I interacted with Twitter I loved the fact that I had to "distill" my idea.
Kinda like Vodka — you keep distilling alcohol until you purify it (or close to it). What you're saying about "refining the idea" made me think about this.
I think the ideal solution will be some sort of middle ground, where much of the drilling down will be done by clicking on specific words or sentences, but a slider would allow you to generally expand more text in the article, for things that aren't exactly related to other sentences.
It does take a bit of doing, and drilling down to another layer should also be able to delete text, so the wording flows better.
If you want to talk about this more, feel free to send me an email, I find this problem very interesting.
Two quick thoughts...
- Maybe limit the layers to 2 or 3. The example you've got in Invision has eight layers which gives me decision paralysis. Do I want the "7 minute read" or the "9 minute read"?
- Consider an onramp from Twitter. People have big audiences there, and linking out to Layered Ink might work better than those 50 tweet "tweet streams".
1. Hmm, the concept is: the more layers, the better. This way, you can easily "pick your pace" — if you're short on time and you want easily-consumable content, you'd skim through 1-min versions. Ideally if at a certain point you say "holy shit, I love this", you'd jump to the full version. The same way you don't just skim your favourite author's new article — you just go to the full version because he's proven time and time again that his style fits you
2. Oh? Tell me more? Did I get you right: showing it to ppl who bypass the 280-char-limit by having tweet storms/threads? P.S: I love Dynasty's logo!!!
How do you expect users to interact or choose between "7 minute version" and "9 minute version"? Are they expected to keep going up the layers one-by-one until the full version is reached? Are they expected to intuitively know which one to pick right away?
Too many possible choices also delegates the responsibility of picking the number of layers to the writer, which can be an additional stress.
If possible, I'd try to figure out the most common use cases. The interactions and thought processes of users should be intuitive and dead simple to describe. Other than, loving the idea! Keep it up. :)
I acquired this "skill" about a year ago and now I use it when I suspect there may be filler text or introductions to concepts I already understand. I know it works because I uncannily land on interesting but otherwise nondescript passages. When I scroll back up I find that I did indeed skip the filler. Of course, this isn't voodoo or unprecedented. It's just funny that I've read so much that my brain basically has a regression model for various semantic characteristics that signal novelty by subject area. I suspect I also switch into different modes of scanning based on the writing style detected.
Because of all that, I actually prefer no layering at all. Reuters articles are Layer 1 compressed and I find them annoyingly curt.
I was also thinking about how useful chdaniel's layers would be when it's more practical to just skim.
1. going through pages looking for interesting textual structure, for example dialog, numbers, capitalized words, etc.
2. scanning vertically or in a zig-zag fashion, using peripheral vision to look for interesting words
3. reading the first few words of a paragraph before deciding if it's interesting or not.
I normally use 2, then try 3 on a paragraph that passes 2's test. Only when a paragraph passes test 2 and 3, do I decide to read it with my (temporary) full attention. 1's more for when I'm searching for something in particular or when what I'm reading follows a specific format and I'm interested in a particular section with distinctive structure.
Here is a dictionary definition: "The action of reading something quickly so as to note only the important points." If you showed me that definition before I started skimming effectively, I would have never extrapolated the behavior you described from that word. I didn't even know people did that.
-----------Idea ----------
I could see value in an open source "Verbose Dictionary" where people from all ages and walks of life would be able to add their own definition of a word. There would be two general rules when someone makes an entry:
1. They would need to write their definition in a verbose manner. I'm thinking at least three sentences, usually more, but also not as long as a Wikipedia entry.
2. They would need to be as open and honest as possible, so that there's minimal translation loss between what they're communicating and what we take away from it. Importantly, the word needs to be described with both intellectual and emotional cues. The author would also be able to let the reader know basic facts about themselves, and there would be some mitigations against trolling or fakers.
Over time, we would converge on a more universal language to maximize our mutual understanding of what each of us truly feel and think about words, concepts, current events, people, etc.... There would also be optional tags and slider scales (i.e. 1-10) that can attach to each definition so that you can correctly communicate the breadth, depth, and magnitude of your thoughts and feelings on the word. Critically, the goal would not be to achieve groupthink and converge on the same definition. That would be contrary to the premise of the Verbose Dictionary.
Not only would I find such a dictionary highly captivating, but I also think that it can serve as a useful tool for conceptual mapping or things like artificial neural networks. What are your thoughts? Would you use the Verbose Dictionary?
Isn't that Wikipedia?
https://en.wikipedia.org/wiki/Skimming_(reading)#Methods_&_P...
> also not as long as a Wikipedia entry.
I don't get the issue. What would this Verbose Dictionary provide that Wikipedia doesn't? You seem to want to differentiate it for no reason.
VD on the other hand would be a real-time, K-clustered map of the human experience. If you go to the entry for Love, you’d see people from all over the world sharing what loves mean to them, anecdotes and all. Crowdsourced feedback would surface the best entries to the top. Political topics would solicit good-faithed micro-blogs with the specific aim of humanizing each other and learning why we believe in what we do. You'd be able to go back in time to see where people's minds and hearts were at on a certain day. Algorithms and strict moderation would ensure that diverse viewpoints are shared and treated in good faith. Maybe I’m wrong, but I think if there’s a dictionary for swearwords, there’s certainly room for a dictionary of the human experience.
Check out the below study published in Nature in 2019. It makes the claim that cultural values of openness are what give rise to democracy, rather than the other way around. We need more of that openness right now. https://www.nature.com/articles/s41562-019-0769-1
Example: a short, by words, explanation for a mathematical problem. Then, the possibility to expand to a more rigorous proof and so on. This would enforce a top/down type of writing that could benefits audience and creators. I believe it would easely apply to the great part of knowledge sharing.
Neat implementation.
You could possibly prototype with a coda template: https://coda.io/@michael-joseph-rosenthal/essayist
Here is the demo (use the slider displayed after the first blockquote in the article) https://blog.fgribreau.com/2014/05/fr-stretchtext-retour-sur... or click on "[+]" to go deeper.
The code is open-source here: https://github.com/FGRibreau/stretchtext
It allows you to answer different questions about the current web page:
- have I been here before? When?
- why have I bookmarked it?
- how did I get on it? Which page has led to it?
- who sent me this link? Can I just jump to the message?
- which links on this page have I already explored?
- which posts from this blog page have I already read?
If you think about a typical person's browser bookmarks -- it's a mess with no hope of ever catching up, prioritizing and sorting. My project could help with that :)
https://arcade.ly/games/asteroids/
Now I've finally added all the stuff I wanted to (black holes, satellites, power-ups) so it's time to pick up another project I started a long time ago and haven't really done much on: my very own version of Space Invaders:
https://arcade.ly/games/space-invaders/
(WARNING: this one is barely functional - e.g., no levels, no shield damage, no scoring, invader firing pattern is all kinds of wrong, invader movement isn't quite right, etc.)
Enjoy! (And feedback welcome!)
All my lonely days are overI licensed that from PremiumBeat. In the early 2000s a friend introduced me to Cowboy Bebop, which I've been a massive fan of since (along with its excellent soundtrack), so I wanted some music with the slightly whimsical, slightly melancholy feel some of the tracks in the show had for Game Over.
It's all Canvas 2D at the moment. There's no WebGL because when I started this project, three or four years back, it simply wasn't ubiquitous enough. Now I might be able to get away with WebGL (using something like Pixi.js) but the last couple of weeks I really just wanted to finish what I started rather than do a relatively substantial rewrite.
Another quirk is that I'm not using (think Phaser.js, or whatever), because the two main motivations for starting this project were that:
1. I wanted to get better at JavaScript, which I'd always been weak at.
2. I guess 2015/16 was a time when the front-end world felt like it was really going nuts with new frameworks coming out all the time, so I wanted to become familiar with and see what I could do using only APIs built directly into the browser.
Getting back to the point, in terms of effects I've implemented services to keep track of and render lists of particles and "clouds" of vapour. The latter are the translucent circles you see used to render rocket exhaust, and some of the explosion effects.
In fact I just use one service for both and swap in a different renderer for particles or vapours in each service instance, since both behave substantially the same.
Since we're throwing around hundreds or thousands of particles/vapours at a time, and, well, a lot of particles throughout the duration of a single game, and we want to avoid much garbage collection to keep the frame rate steady[1], I implemented an object pool so we're not constantly creating loads of garbage.
Particle types are defined declaratively: colour stops (including transparency), duration, expansion rate for vapours. Instances of particles also have properties like position and velocity.
Explosions are also defined declaratively with an arbitrary number of stops/events at timed intervals which define number and type of particles spawned, angular range through which they should be spawned, initial spread, velocity spread, any sound effect(s) to be played at each stop.
There's a service that manages explosions that you tell call with something like:
explosion.create(explosion.playerExplosion, player.position, player.velocity);
This will create an explosion of type "playerExplosion" at the player's position and apply the player's velocity as a drift to all particles and vapours created.So once I've defined my explosion types it's easy to use them in a variety of different scenarios throughout the game without cluttering the logic too much. The services take care of rendering and particle management so these days I don't have to worry about it too much.
Hopefully that goes some way to answering your question but if you'd like to know anything else, please shout.
[1] GC screwing the frame rate is a genuine issue I ran into with this, particularly on mobile devices.
The graphics, music, and fluid motion are awesome.
But, I cannot stand the controls. I play games like this laying down in bed at night, which automatically disqualifies this, due to its use of my phone’s orientation. Also, the modal disconnect between throttle and direction controls (one orientation and the other button press) is too much to tie to muscle memory.
If you added an “old fashioned mode” with a dynamic joy stick (appears where ever I put my thumb within one bottom quarter of the screen) for direction and throttle (touch to engage and drag a small amount in any direction to turn and go that way), that’d fix the issue. NOVA 3 for iPhone got this 100% right. Then, a small section on the other bottom corner could house a few small buttons to engage hyperspace, etc. Just let the user pick right or left handed.
Tbh, I've never been satisfied by the tilt controls: they work OK if you're stood or sat still, but if you need to move at all whilst playing it can end up going sideways. I probably haven't yet put in enough effort to get them to feel right whatever the ambient orientation of the phone.
I think you're right though: I need to offer an alternative control scheme that's touch only.
I'd love to take credit but sadly not my idea. Very similar ships featured in Asteroids Deluxe back in the day: https://www.youtube.com/watch?v=GGODay8YUio. I thought it was a great idea so decided to add them to my version just because they add a bit of variety.
But then I realised this thread is different. This is for projects that are In Development, and people are more likely to post things that aren't finished, so I think that's a great idea!
Source code and more details available at https://github.com/santhoshtr/wikivue
It is a fully client side PWA application using wikipedia web apis, installable in desktops and mobiles and use like a native application. It has offline support - With the help of service workers, the application even works when there is no internet, provided, the content is previously viewed. It is a single page application - page does not reload when exploing wiki articles, presenting an immersed reading experience. uIt ses modern UI framwork Vuetify. Adapts to all kind of screen sizes. It presents an optimized reading experience with good typography and optimum page layout. Multilingual by default - All language editions are in single app. Using language selector user can select the language edition.
I wanted to make this as a p2p capable application. Currently it runs on dat protocol as well: dat://25689f3a757853a511474d38f0a6d6be2cd2b0cb161686d75fda5c1619137921(need beaker browser) or wikipedia.hashbase.io
Props on using dat too. We need less centralization.
clicking Political Career on tree view raises exception from querySelector. probably parentheses breaking it.
If you're looking for a bit of feedback, the search doesn't seem to handle fast typing well. I tried searching for "Frank Chu" and it seems that if I type it really fast, I get either no results or Franks that aren't Frank Chu. If I type slower, Frank Chu shows up.
i.e a database optimised for logs and log-like data and nothing else.
Existing solutions are too inefficient for the use case of logs (TB+/day), suffer under high field cardinality, are based on costly and unnecessary full-text-search systems that aren't well optimised for logs data or just plain and simply can't handle structured data and degrade to simply storing lines.
Design goals are super efficient/fast, extremely fast distributed regex matching backed by trigram bitmap indices, columnar storage for compression and cardinality reasons.
I have a prototype of the indexer and lowest levels of the query engine and regex syntax to trigram query optimiser. Will be adding the ingress and query frontends hopefully have something to show soon.
I don't know if I am going to go OSS or not but definitely designed to be run on-premise though I could easily run it as a multi-tenant service if people are interested.
I founded my own startup in the past and have been putting off actually doing a real side-project for the last couple of years but could never get away from the itch so this is going to be my swing I think.
If this is something you find interesting hit me up, or if you are just frustrated with ELK for some reason or another let me know what you think sucks and I'll try build something that sucks less at that.
A linear based approach can get you to about 1GB/s or so per core with Rust.
A medium-ish size startup probably logs around 200GB/day of logs if they aren't very tight on their log volume. If you only want to search the last 24 hours that is maybe ok, you can search that in ~10-20 seconds on a single machine.
However this quickly breaks down when a) your log volume is a multiple of this and/or you want to search more than just a few hours.
In which case you need some sort of index.
There are different approaching to indexing logs. The most common is full text search indexing using an engine like Lucene. Elasticsearch (from the ELK stack) and Solr explicitly use Lucene. Splunk uses their own indexing format but I'm pretty sure it's in a similar vein. Papertrail uses Clickhouse which probably means they are using some sort of data skipping indices and lots of linear searching.
Of these approaches Clickhouse is probably the best way to go. It combines fast linear search with distributed storage and data skipping indices that reduce the amount of data you need to scan. (especially if you filter by PRE WHERE clauses).
So why not go with Clickhouse? Clickhouse requires a schema. You can do various things like flatten your nested structured data into KV (not a problem if you are already using a flat system) and have a single column for all keys and the other column for values. This works but doesn't get great compression, makes filtering ineffective for the most part and you now have to operate a distributed database that requires Zookeeper for coordination.
The reason I am choosing to build my own is that logs require unique indexing characteristics. First and foremost the storage system needs to be fully schemaless. Secondly you need to retain none word characters. The standard Lucene tokenizers in Elastic strip important punctuation that you might want to match on when searching log data. Field dimensionality can be very high so you need a system that won't buckle with metadata overhead when there are crazy numbers of unique fields, same goes for cardinality.
TLDR: For big users you must have indices in order not to search 20TB of logs for a month. Current indices suck for logs. I write custom index that is hella fast for regex.
Also, if this is open source, I will definitely be interested in checking it out/contributing etc.
If I was to make the changes I want to Clickhouse, i.e schemaless and full indexes per/segment then it wouldn't be Clickhouse anymore.
The idea is to shard the data by logical domain and by time segment, so that queries only apply to relatively small and efficiently-read data, and to exploit the embarrassingly-parallel nature of the problem.
I'm implementing the segmenting based on time + a sharding key to group together records of the same domain on the same shard. By sharing the shard with other domains it prevents having an overly large number of segments per time interval allowing them to be bigger and get better index density. Which is in important factor in my indexer design which amortizes the cost of the indices over large number of rows.
Storing logs in sqlite is definitely a neat way to go for smaller scale stuff, hope you make something cool out of it.
For me though I have faced this logs problem at very large scale numerous times in my career and have tried all manner of commercial and OSS solutions and have yet to be satisfied so my project is definitely geared to solving the sort of problems you have when everything else just either stops working or costs more to run than your actual app.
Not saying it won't scale down very well. I think my software on a single machine should easily handle atleast 20k+ logs/second (prototype is much faster atm but lots of features need to be added) and be able to serve queries concurrently with that on just a few cores and ~8-16gb/ram for say at 200-400GB dataset.
I think the 3 deployment sizes I will optimize for are single node for demo and benchmark purposes, 3 node for realistic small deployment and 6-10 nodes for high volume logging environments like my $DAY_JOB.
The query syntax I was thinking of focuses mostly filtering on and selecting data with regular expressions or equality matching on text and equality and range queries on numbers.
i.e something like this:
index_name.filter(message ~= "(hot|cold) storage" && drives.status > 100).select(drives.name, message, drives.status)
Or something more SQL like, haven't really settled on a query language yet mostly just been working on the indexing and the lower level parts of the query machinery that work with the index.
This is a more specialised system that makes stronger tradeoffs to achieve really high efficiency for logs data. Stuff like indexing a reduced alphabet and not optimising for pivots and other views that are important for generic event databases.
Additionally Honeycomb is a hosted service.
I definitely intend for this to run in your own environment, on your k8s cluster, VMs, bare metal - whatever makes sense for you. If I do run it as a hosted service it will come secondary to the primary on-premise distribution.
> It does not index the contents of the logs, but rather a set of labels for each log stream.
This system is different because not only does it index the contents of your log messages it accelerates regex queries which are great for structured messages produced by machines.
Similar to Loki though it does index data by "labels", though not quite in the same way. Instead every field of a log is treated the same (except for time, it's special). Nested structures are flattened by path, i.e '{"message: "a", "structure": {"nest1": "b"}' is flattened to "message" and "structure.nest1". Under the hood it also stores column per type so if you later send a number at the same field you previously sent text it doesn't coerce like Elasticsearch. Instead depending on your query it will either search "structure.nest1"(text) or "structure.nest1"(number), i.e if you use a regex it will infer you are searching the textual version, if you attempt a range query it will infer number as the type.
Loki is definitely an interesting system and looks like it could handle great ingest volume but I don't think it could match my targets for sub-second queries on ~10TB of logs.
The reason I rejected this approach is it gets very expensive for large data volumes if you want your queries to remain responsive.
Say you want to search a 100 TB dataset (not as large as it sounds when it comes to log data...). You can do about 1GB/s/core assuming you have the data on local disks that can scan fast enough and each of your machines have 16 cores that is 16GB/s/machine. Lets say your query target time is 60s (pretty slow tbh, incredibly generous I would say).
The math then plays out like this. You can scan 60*16GB for each node in your cluster, i.e 960GB. You need to have that ~TB of data on disks that can read at 16GB/s which means you need it evenly spread across 8-16 very high end SSDs.
On top of that you need 100 of these machines to complete this query in 60 seconds.
Now Humio goes on to say you can store all your persistent data in a cloud bucket. Which is a good strategy and something I am employing too but if you have no indices you actually need to scan it all which means you are limited by how fast you can reasonably fetch the objects across your cluster and hence the speed of your network interfaces.
Say if you are on GCP which has a relatively fast network that seems capable of around 25Gbit to GCS most of the time and you actually get peak performance all the time (pretty unrealistic but ok). Then to fully scan 100TB in 60s you would need over 500 machines. If you are able to use Humios tags to reduce this somewhat say by only searching for errors and that gets you down to 10% of your total logs that would represent a 90% speedup. Humio sort of has quasi indexing in this way similar to Prometheus however they don't help you when what you are looking for isn't tagged to stand out.
This is why indices. Yes - indices are hard, yes they can have bad worst cases if you aren't super careful. However lets consider indices for this query.
Say your logs are syslog + some extra structured data. You have things like application_name, facility, level, etc. You have 100TB of logs to search, you are looking for logs by your main application which is say 60% of your total log volume, you are looking for DNS resolutions errors that contain a specific string "error resolving".
With my prototype my indices are approximately 5% the size of the ingested data. The raw ingested data is also compressed really highly, lets assume equal to Humio (it's probably higher due to file format but not important).
So the thing that jumps out here is we now only need 5TB of indices on our machines to reasonably find needles in our 100TB of data. Additionally our indices are split by field so if we know we are searching the message field we only need to load those. Indices for columns with low cardinality are extremely small, those for high cardinality much larger but capped due to various log specific optimisations I am able to use. So lets assume the message field makes up the majority of our index, say 80%. That brings us to 4TB of data we need to scan.
Now usually 60s would be super slow for a query for a system with indices like this, usually you would try make sure that 4TB is in RAM and simply blow through it in <1s across a few machines. However for comparisons sake lets say 60s is still our query budget and we don't have completely stupid amounts of RAM.
So we need to be able to scan 4TB/60s ~= 66GB/s which given our previous machine calcs with local storage puts us at ~5 machines.
However we could likely do this with even less CPU assuming our storage is fast enough as unlike an unindexed system like Humio we aren't applying expensive search algorithms to every row, we are simply crunching a ton of bitset operations in this case a metric ton of bitwise AND.
Anyway this is a long rant. The reason why is that many people always say "Can't you just do this fast enough with linear search" and I always have to reply "it depends on how big the haystack is". This quantifies what is too big of a haystack in a reasonable way.
Most of them will cut power after a minute of so if you don't draw more than like 100mA of current, but that shouldn't be a problem with 350 LEDs. It'll save your Arduino's voltage regulator some grief, too :)
Click to make buildings (above the tree line only right now) and click and drag the sun down to go to night. Drag the moon to return to day.
Gif of night sky: https://twitter.com/simonsarris/status/1235761030996901888
The point is to replace the background town that's currently on https://simonsarris.com (which is animated purely by CSS right now, including the birds) with a much more interactive and playful one. (the current site background gives you an idea of what will be built and why it currently only works behind the tree line). The time consuming part right now is making pretty graphics. I had begun with buildings made from Canvas drawing code, with procedural params and all that, but I'm switching to images because it will be much prettier in the long run.
It's been out for about 1.2 years now and we're really starting to nail some important features.
JUST about to post a new release now.
COVID19 is having us pivot a bit in that we're going to experiment with collaborative group reading in the hopes that students can work more efficiently with their colleagues without having to leave home.
The core idea is to have a fully-integrated reading platform sort of like an integrated development environment but for non-fiction material (textbooks, research papers, documentation, plus web content).
Right now we support PDF and web content but are actively working on EPUB and improved reading of web content.
The key functionality is built around annotating your documents and taking notes and building flashcards so you can maintain a personal knowledge repository.
It's also Open Source and supports cloud sync. We have a mobile webapp now and working on porting it over to Android soon.
It's a useful tool for DBA to identify issues in SQL queries automatically. Only 50 rules for now, but more than 1000 described in backlog :)
Funny, but initially this tool aimed at developers' needs.
I've made a lot of microservices, which only started the database queries. I came up with the idea of making a tool that would automatically generate all the microservices based on SQL queries. The MVP of such a tool was implemented, which reduced the developer workload by at least a quarter. In this tool, it was required to write queries in a certain way that did not make it universal and did not give a connection with the database structure.
The next step was to create a system that relies on the text description of the database schema in SQL format (DDL) and automatically understands the types that will return the SQL query. Such a tool can automatically inform the developer about possible errors on the interface between the application and database when changing the structure or the SQL queries themselves. It can also be built into the CI to provide the automatic code review at the version control system level and prevent the erroneous code from entering the repository.
But the developers did not appreciate all the advantages, as most projects are developed using ORM :(
But at the same time, DBAs expressed interest in implementing a system of the automatic search for bad requests already on the production database.
Any questions are welcome :)
I too have been diving into writing raw SQL some while ago and I liked it.
The idea is that the tool will only work with the sources of SQL queries, and I had to work hard to implement it.
The work consists of several steps 1) get the AST (Abstract Syntax Tree) database schema (DDL). At this stage, only Postgresql up to version 10 is supported. Soon I will deal with the parser from Postgresql 13. This is not a trivial task. I have to build everything from the source code of Postgresql :)
2) Building a database model. We parse all DDL-commands one by one and apply changes. For example, apply all ALTER TABLE to the table described above, add user-defined functions to the list of built-in functions, and so on. It is necessary to have a complete overview of all types of tables, indexes, and each table described in a DDL script.
3) get an AST query (DML) and build a model of the result. This is the most complex and interesting part :) The task is to get a list of field names and their types, which will be returned after the query execution. You need to consider CTE and the list of tables specified in FROM. You need to understand what function will be called and what result will be output. For example, function ROUND is described in three variants, from different arguments and with varying types of result, function ABS - in six variants. I.e., it is required to understand the types of arguments before selecting a suitable one :) In the process, implicit type casting is considered if necessary.
The same is valid for operators. An operator in Postgresql is a separate entity that you can create yourself. Postgresql 11, for example, describes 788 operators.
Various types of syntax are taken into account, for example - SELECT , t1., id, public.t2.name, t3.* FROM t1, t2, myschema.t3 - will be parsed correctly.
But even this is not the most challenging thing :) The most exciting thing is to be able to understand two things: A. whether each of the fields can be NULL or not. It depends on many factors, such as - how the JOIN of the table with the source column is made, whether there is a FOREIGN KEY, what type of JOIN is used, what conditions are described in the ON section, what is written in the WHERE conditions. B. How many records will return the query described in the NONE, ONE, ONE OR NONE, MANY, MANY OR NONE categories. Again, this is affected by the conditions described in JOIN and WHERE, whether there are aggregation functions, whether there is GROUP BY, whether there are functions that return multiple records.
This function, by the way, is also used in the first step - to get types for VIEW.
This was a brief description of the first part of the service ;). It can already be a service in itself. It is possible to generate types and all code of microservices, including JSON-schema and tests, based on DLL and DML set. But as I wrote above, most people prefer to use an ORM such as Django or RoR. :( For this reason, I've removed this functionality from a playground and will take it to a separate project when I get my hands on it. It will also include various tools, such as - information about all possible exceptions that may be thrown by request, automatic creation of migrations to CI if your DDL files are in the repository, whether there are unused indexes or fields and many other exciting things :)
And the second part of the service that I plan to promote in the first place is a tool to search for bugs, architectural, and performance problems automatically. The target audience here is DBA, who have to deal with forgeries RoR-developers and their colleagues :) This part is entirely based on all information obtained in the previous stages. Part of the errors can be understood by AST (linter principle), but the most interesting rules are based on knowledge about types, understanding of NULL/ IS NOT NULL, and the number of returned records.
There are more than a thousand such rules, but I suppose there will be about 5000 of them in the next couple of years :) Also described are about 200 rules that can lead to runtime errors, but they are not needed by DBA, because their job is to find problems in valid queries :) There will be more than 1000 such rules as well since Postgresql describes more than 1700 runtime errors.
And yes, this is all about Postgresql. After I start commercially using Postgresql, I plan to do the same for Mysql and then perhaps for Clickhouse if there are no special offers of cooperation :)
But my application was to be able to use raw SQL queries instead of an ORM in an application. By statically analyzing the SQL queries, then you can, in a statically typed language, automatically type-check the parameters to and results of the queries. Combining that and an IDE like the Jetbrains ones, which provide intelligent SQL autocompletion/refactoring, then tbh., I think it would beat an ORM in terms of ergonomics. Some people like LINQ or various Haskell/Scala ORMs because they are type-safe. This would be totally natural to those who know SQL without the downsides of being totally unanalyzed and type-checked.
It would be like the clojure library called hugs, but with static type-checking.
But custdev showed that companies do not care about it.
They are ready to take Django/RoR/Laravel developers who know only ORM. Such developers are cheaper, they are easier to hire. Some people also think that it's faster to develop this way :) They prefer to start dealing with problems after they get on production DB.
They shift developer problems to DBA. There is research saying that the price of fixing a bug in production is on average 400 times the price of fixing it at the development stage.
Ok, the boss call the shots :) I had to make a pivot to DBA needs. It was a bit upsetting at first, but then I realized that it was even simpler. You need to do a lot more tools for developers to make them feel comfortable.
A few words about open source. At first, I used this AST parser for PostgreSQL https://github.com/lfittl/libpg_query But it's frozen on Postgresql 10. And we don't know if there'll be any updates.
No official AST parser for MySQL.
There's a hard way to get a bison/ANTLR grammar parser.
Two weeks ago there was a parser like this for MySQL: https://github.com/stevenmiller888/ts-mysql-parser.
There's also a parser from vitess: https://github.com/vitessio/vitess/tree/master/go/vt/sqlpars...
The only problem is that the grammar for these parsers was written by hand and is not related to the official MySQL repository. For example, the vitess parser does not support the syntax of MySQL 8.0, and MySQL 5.7 does not support more than 40%.
There is also such a tool https://www.jooq.org/. It supports some of its own generalized SQL syntax, which does not take into account the specifics of different databases.
Look, there is another tool that uses libpg_query - sqlc: https://news.ycombinator.com/item?id=21765689.
And the author of ts-mysql-parser also offers an analyzer: https://github.com/stevenmiller888/ts-mysql-analyzer There are only four rules at the moment...
Anyway, all hard work starts after you have the right AST parser in your hands. And if you don't spend all your time on it, it will be difficult for you to do something really interesting :(
PS: I removed the types exporting tool from the site a few days ago, along with texts explaining all the advantages of this tool to the developers :) In a couple of weeks, I will transfer it to a separate domain, as a separate project.
I am open to personal communication outside this site, all my contacts are at https://holistic.dev/en/contacts/
sadly it wasn't picked up.
Congrats on product, there is a big market for it
It is crucial that you add the actual database schema (DDL) before checking.
This functionality will appear soon (client cabinet, API).
Please note that analysis is performed using static methods only! No connection to the database is required. In particular, statistics and other environmental parameters that may affect the query performance are not taken into the analysis. I would like to be able to enrich the data obtained by static methods with data from the database production, but at the moment, this is a very far-reaching plan.
The tool will make recommendations that are necessary, but not enough.
The actual database parameters affect the real query plan. There are a lot of such settings, and the impact changes over time.
Keeping an eye on these parameters and adjust them - there is a significant layer of work that is not a priority at this stage. Excellent tools have already been made for this purpose, such as postgres.ai.
DBA work is divided into two parts - to monitor the quality of queries and database schema and configure the parameters of production servers.
My tool covers the needs of the first part and does not cover the second part.
I talked to product owners of companies producing products or services related to the second part, and they agreed to integrate our products when I come ready.
If you're not an EE - a function generator is a pretty common piece of electrical engineering lab equipment.
I've got all the source files up on GitHub - feel free to take a look: https://github.com/cushychicken/bfunc
I've also been keeping a weekly project journal. I just posted the latest installment today if you'd like to see what I've gotten up to: http://cushychicken.github.io/bfunc-weekseven-log/
I'm already planning a second prototype and board spin with more functionality.
If you need or want a really bare-bones function generator for your home lab, get in touch! Instructions for how are in the post. )
Yeah, I've been meaning to add a PDF sch for a while. Just gotten swamped setting up a home office in the last week. I'll try and post one up today!
https://github.com/ityonemo/zigler/
By the end of the refactor, an additional setting will be included that makes the beam vm "garbage collect" your zig for you, that is, you can lazily allocate memory in your nif, and it will be cleaned up for you afterwards. This is a major first step in making "safe nifs" which are OTP-supervised OS threads with, at least, memory resource recovery performed by a BEAM process if the thread happens to crash.
Also, why use zig over rust? because zig is aggresively unopinionated about its memory allocation, so Zigler makes it easy to use the internal BEAM allocator, which 1) lets the BEAM be aware of allocations that are happening for observability and telemetry purposes, 2) lets your memory allocations play nice with the BEAM's fragmentation preferences and 3) leads to potentiallly better performance as you can make fewer trips to the kernel for allocations.
Examples:
-Food banks (individual sites or directories)
-Financial aid
-Elderly grocery shopping hours and delivery
-Healthcare (shelter in place info, testing like Verily Baseline, etc)
This info is currently scattered across the Internet and we're aggregating it in one place. It's hosted on Github using markdown so anyone with spare time can be a massive help (https://github.com/coronawhatnow/coronawhatnow.com).
We've been building out the infrastructure for a while (scrape all domains monthly, resolve all domains, progress the data etc), but have only recently launched the API (see htttps://host.io/docs).
We'll soon be releasing a Top 10M Ranked Domain list, like the Alexa top 1M, but 10M, and based on our own ranking signals, instead of traffic data like Alexa.
If you've got any interesting use cases for our data or any feedback I'd love to hear it! ben@ipinfo.io
> Shared IP Address
> There are 68,258 domains hosted on 216.58.217.36 (AS15169 Google LLC) including google.com. Here's a sample: [...]
You wrote:
> scrape all domains monthly, resolve all domains
what does "all domains" mean? All domains worldwide? Or some sub set?
As mentioned, I think your project sounds interesting — still I'm wondering, how did you verify there's an interest for what you're building? (I'd think/guess there is, just wondering if/how you verified this, or knew beforehand)
What are some cases you know about this far?
Intellectual property enforcement
Malicious traffic / account creation investigation
Domain name or competitor research
Market analysis (eg. find out how many customers publicly traded hosting providers have)
UPDATE: The free tier is static at 1k and then you have to buy credits or it is 1k / month?
We'll likely add monthly subscriptions in the future perhaps with a recurring monthly free tier, but we don't have them yet.
If you do run out of the free $10 credit and want more time to see if the API is going to be useful for you shoot me an email and I'll be happy to issue more credit.
Same question for ranking info, assume you're not scraping yourself and using some like D4SEO?
We're also doing the ranking ourselves. We bootstrapped it by doing a regression against Alexa and other top 1m lists using a bunch of our own features (like number of backlinks, some content features, some IP address related features etc). We'll be sharing more details around this soon.
I've been recoding my HTML5 <canvas> library from scratch[1]. Most of the work is done - I'm now onto the fun documentation bit[2].
Something I'm particularly proud of achieving in the recode? Dynamically responsive bendy images in the web browser - with added animation capability![3]
[1] Scrawl-canvas v8 code base - https://github.com/KaliedaRik/Scrawl-canvas/tree/v8-alpha [2] Scrawl-canvas v8 code documentation (incomplete) - https://github.com/KaliedaRik/Scrawl-canvas/tree/v8-alpha/do... [3] Youtube video showing dynamically responsive bendy images in the web browser - https://www.youtube.com/watch?v=LebxNhVWyOQ&t=3s
Can scrawl-canvas run in a Web Worker and render to an Offscreen Canvas? You'd lose integration with DOM events for interactivity, but you'd be able to perform image processing in a background thread and not block the main renderer thread so that UI elements are responsive.
The majority of the code runs in the main thread; filters use a web worker. OffscreenCanvas currently has less than 70% support (caniuse says), so most of the work is done in regular canvas elements which are created but not added to the DOM, then copied over to the DOM canvas once per RequestAnimationFrame tick
[1] https://www.frontiersin.org/articles/10.3389/frai.2020.00003...
https://arxiv.org/abs/1803.03635
Some pruning methods have recently been added in the latest feature release of PyTorch.
Another difference with the LT hypothesis is that the pruning there is very specific to neural networks.
Thanks!
Lottery tickets on the other hand are configurations of weights that rival the full network in performance when both are trained from scratch, with the ticket having far fewer parameters to optimize. Pruning is only the method to find the tickets for now, but the ideal would be to have a weight init strategy that can create winning tickets in one-shot. There is work being done on this front, and also to see if winning tickets for one image classification task generalize to image classification as a whole. This would do a lot to reduce the size of networks from the start, and so far results are promising.
But yes, this is all very specific to neural networks. Do you have a blog or other place where you post about some of the things you’re working on? It would be nice to read about.
I am yet to release code publicly but that would take a couple of months, given the papers are my priority now - downsides of working on a PhD while having a day job :-|
To be clear I am not claiming that compact models are related to the LT hypothesis, just that I think they are and this, of course, needs to be rigorously established. For a while I would be spending time on the compact model arc (my primary interest), till I can get to investigating its connections with the LT hypothesis. In fact [1] doesn't talk about the LT hypothesis at all, instead focusing solely on compacting models in a model-agnostic manner.
[1] (PDF) https://www.frontiersin.org/articles/10.3389/frai.2020.00003...
Someone nerd-sniped me and I added in the ability to record a video as well. Technically, you could use it to do quick 5-10 minute drawing/narrated lessons and export them for educational purposes.
Site: https://joeblau.com/doodle/
PencilKit — which provides all of the UI for drawing and selecting drawing tools.
ReplayKit - which is designed for games but, I'm using it to just record the whole screen.
There is really not that much code outside of just calling into those frameworks which is what allowed me to make this in such a short time. If these types of libraries exist on Android, I could probably create something, but I'm not super familiar with Android's library ecosystem.
It has native support for all commonly used data types, so you don't need to artificially specify custom encodings just to get your data across.
It's a twin text / binary format, where the text format can be transparently converted to the binary format, and vice versa. This means that you can use the binary format for storage and communication, and only convert to/from the text format when humans get involved.
I'm currently building a reference implementation in go [2], which is now running faster than the JSON codec in my experimental branch [3].
[1] https://github.com/kstenerud/concise-encoding#concise-encodi...
[2] https://github.com/kstenerud/go-cbe
[3] https://github.com/kstenerud/go-cbe/tree/new-implementation
I'm dubious it'll ever be actually seaworthy, but I'm picking up all sorts of little skills and experiences along the way, like troubleshooting a Halkey-Roberts valve this morning that only partially sealed.
What size/model is the boat? Depending on your interests, you could even explore a more powerful electric motor and try to get it up on plane. There are lots of people out there building powerful DIY electric drivetrains (eg. https://efoil.builders/ for e-foils). Have fun!
FWIW here's a really cheesy video for an electric outboard project I did back in college: https://www.youtube.com/watch?v=Elw9DDL6wTM
It's currently working, but I've stalled a bit because I'm not sure of the best way to promote it. ProductHunt is probably a good first step, but other suggestions welcome.
Chrome: https://chrome.google.com/webstore/detail/curb-your-consumer....
Firefox: https://addons.mozilla.org/en-US/firefox/addon/curb-your-con....
More info: https://www.curbyourconsumerism.app/#faq
Thank you for doing what's right!
https://addons.mozilla.org/en-US/firefox/addon/curb-your-con...
I don't have a name for this yet.
[2] https://www.youtube.com/watch?v=87hKzrjRWww#t=1m10s
[3] https://www.reddit.com/r/MachineLearning/comments/fl2akd/d_a...
We were making silly games in Visual Basic 6, because that struck us as a cool thing to do. However, it's hard to show them to your friends, when they all use macOS or Linux. Plus, we didn't want them to miss out on the nostalgic feeling of booting up Windows 98. So, after a lot of blood/sweat/tears and a physical copy of the MS Windows 95 Resource Kit book, we finally can ±roughly automatically install a Windows 98SE machine in QEMU, load it with our games and some settings, and then upload it to S3 to be "played" with copy.sh's v86 engine.
Without further ado: https://paschke-images-test.s3.amazonaws.com/welcome.html
[0] https://github.com/ggerganov/imtui
I would guess one part where parallelism might help is interleaving of packet parsing and (de)compression if they exceed the compression threshold.
I'm also considering buying a sewing machine and making masks for my local community. Shoot me a message if you'd be interested in branded (cloth) masks for your startup. This would help subsidize the cost. Still feeling the idea out.
[1] https://redka.games/shootout [2] https://redka.games/mages [3] https://github.com/mourner/rbush [4] https://github.com/anvaka/ngraph.path
Unfortunately, it currently looks terrible, and so far has received one 1-star review, which is not doing much to help my motivation.
It's on the Firefox add-on store (https://addons.mozilla.org/en-US/firefox/addon/metasearch). I plan to add the code on Github once I refactor it some more and add support for Chrome.
FitnessFaq (very good form and structure) Calisthenicmovement (same as above. Only downside is that their 'beginner` routines are more like intermediate)
If you are looking to mobility I would recommend Tom Merric
[1] https://www.reddit.com/r/bodyweightfitness/comments/flce7e/r...
* The Reddit bodyweight fitness Recommended Routine (RR) [1]
* Minus the Gym [2]
* Tao Physique [3]
They're all quite similar (which is good). Watching the second made me replace the RR's pulling progression with exercises using a dip station (cost £35 on Amazon), and the third shows a progression for handstand pressups and glutes.
Also, I switched the order of the RR exercises to be more like supersets based on the advice of the second link, so instead of doing pairs of exercises with rests in between each, I now do 8 types of exercise with a rest at the end before doing another 3 sets (so 4 sets in total). That seems a better use of time. This is the order of progressions I'll try in my next workout:
1. Press ups
2. Squats
3. Rows
4. Core
5. Dips
6. Glutes
7. Handstand pressups
8. Pull ups
Anyway the Reddit crowd know way more than I do so I'd definitely check that out.
[1] https://www.reddit.com/r/bodyweightfitness/wiki/kb/recommend...
Not affiliated with them, just very happy with their videos.
https://www.reddit.com/r/bodyweightfitness/wiki/kb/recommend...
My business isn't important, but what is important is what you do over the next coming months.
During the GFC, I was a contract programmer and was let go in November. In Australia I figured nobody was going to hire in December, January is basically a write off, and could possibly find work in February.
Now I had 3 months up my sleeve. I could either lay down the foundations to my side project, or slack off, play video games, and watch videos all day.
So I worked hard on my side project which was making no money, and eventually it grew legs a year later when I was in a position to work on it full time, and have been ever since.
Now, what are you going to do with your current spare time? Nothing you do will make money instantly, but you could be planting those seeds, and maybe your tree might grow into something big.
Instead, I assembled a modest new desktop and put Arch Linux on it. It's been _years_ since I used Linux (even more since I assembled a computer instead of just buying one from Apple) and it's really been a lot of fun. I've gone totally all-in-crazy with it to. I use this obscure tiling window manager called Sway, and built the whole machine into a tiny little small-form-factor case. It's been a LOT of fun and I've learned a hell of a lot.
My only issue is cooling this little bugger. I've got a fan in there now that _just_ fits, but it creates a crazy amount of turbulence noise if I put the side panel on. I've given up on air cooling and ordered a water all-in-one cooler instead. We'll see how that goes. But either way, it's a blast to try all this stuff out.
Once I get everything perfect with this new rig... I'll go back to trying to get comfortable with Rust. :D
It's a pay-for-what-you-use service (no monthly fees) and I'd like to focus on open source and indie games. It features a live web-based server console, web-based ftp access, and real-time progress indicators as the server starts up.
It's been in development for the last 5+ years but I've used the last couple of weeks to finally get it to a point where people can start using it.
At this point I'm just looking for a few interested people to try out what I've built and get some feedback.
The infrastructure used to be entirely on Linode but I migrated everything over to AWS last year, and it's been a huge benefit. It greatly simplified everything and I got rid of huge swaths of code, which is immensely satisfying. :D
The game servers are run in Docker containers with a Node.js based api server for communication with the website.
I'm currently working on adding some more games to the library and learning about marketing.
There are still a few issues there I'd like to address before I publish it. Feel free to follow me on twitter (@yrashk) if you're interested, I'll announce it there.
I'm also considering making an experiment and publishing it under Prosperity license (https://licensezero.com/licenses/prosperity)
Would you consider adopting the MIT license? I could use a library like that for a work project and would be interested in collaborating on it.
Have you come across this library? https://github.com/bittnkr/uniq
> "A lock-free (multi reader / multi writer) circular buffered queue."
It has an algorithm that is easily translated to SAB + atomics. I'd be curious to know how the design of your library compares to uniq.
Thanks!
It's also giving me a fun chance to dive deeper into ASP.NET Core/React/TypeScript, something I work with professionally, but just haven't had the time to fiddle.
Currently working my way thru a bunch of preparatory bugfixes: https://docs.google.com/spreadsheets/d/1TicFDMudKKA6CZcrscg1...
* ran on hardware that I owned (or rented in the cloud)
* had robust de-duplication [1]
* didn't require expensive or proprietary hardware
* ran cross-platform, so libraries can be created, updated, and used on different computers [2]
* uses a web-based UI, so I can see and share my library from any mobile or desktop browser
I'm giving access to the beta in exchange for feedback. I will release another batch of invites when the next release goes live. I've been releasing about every month, but this last version got a case of featuritis[3] and has taken a while to stabilize. If you signed up recently, expect an email next week; sorry for the delay!
If you want to read more: https://photostructure.com/about/introducing-photostructure/
[1] https://photostructure.com/faq/what-do-you-mean-by-dedupe/
Tldr: I've open-sourced several components of PhotoStructure already, and will open-source everything else if the company ceases doing business.
- Where can I pay you for creating this wonderful software or what else are you charging for?
- I saw that you offer docker and node installation manuals, but how does this fit together with your business?
- You said you open-sourced several components, so which are the components that you would like to keep secret for the time you are in business?
- How does your software compare to Media Goblin [1] or Photoprism [2]?
- Is there any federation like network feature planned (e.g. Activity Pub support)?
Don't get me wrong. I totally like what you are doing, but I don't fully understand it yet and would like to know if it is what I am looking for ;-)
I'm switching gears now to working on a roguelike engine, as the term is supposed to be used. Meaning, games like Rogue itself, but also Nethack, ADOM, Angband, etc, rather than games like Spelunky. I'm excited about this because roguelikes make up for their extremely simple graphics by tending to have extraordinarily complicated systems. Of particular interest to me are procedural map generation (tons of interesting algorithmic possibilities here) and monster AI.
Besides, building a 3D renderer is not something that particularly interests me currently, so skipping that and just using sprite sheets made to look like ASCII chars is perfect.
Do you create complex scenes or demos to test your engines to the limit? Don't you actually have to create a game to test your engine? For this do you port an existing open source game to your engine?
The idea that we throw away a lot of the signal we generate while doing things online and this can be put to good use for ourselves.
As it is right now, Histre aids the casual online research we all do (ie the explore -> filter -> decide loop). For example, it removes friction in taking notes on links you're looking at, with free-form tags that you don't have to create first and other such niceties that add up. And it easy to group notes into notebooks and share with teams. In short, when you have to look at a bunch of links for something (decide on AirBnB, people to hire, material for your next blog post, etc) Histre makes your life easier. But this is just the starting point for what Histre intends to do.
IMHO the biggest problem with apps like Evernote, Notion, Pocket etc is that it becomes digital hoarding, and not a knowledge base. And the knowledge base focused apps out there involve a lot of manual upkeep, which almost never happens, especially at work. Things start out okay and quickly fall into disrepair. I'm differentiating from the other note taking apps by automatically putting together a knowledge base (grouped by topic etc). Automatic Upkeep (WIP): Histre detects links/notes related to your existing notebooks and offers to update those notebooks with the new links and notes. This is similar to how Google Photos suggests new photos for your existing albums. This solves the upkeep problem. Currently people create knowledge bases with good intentions and it becomes stale and useless quite fast.
Exports: I'm working on org-mode exports, as I'm an Emacs user myself. Other export formats coming soon.
There is Hacker News integration that you may want to try. It lets you import and optionally share the stories you upvote.
Now feel like a great opportunity to buy some "cheaper" stocks that could make great returns in the future. Also helps to have better perspective of my "limited" vision of the market.
[1] https://docs.google.com/spreadsheets/d/1bBsJnUIWg8BbET-h3oKN...
Also, seeing people add and edit each other's comments and insights in this doc gave me an idea for a fintech app: basically a social app that would let people put forward their personal cases for why you should buy or sell a particular stock at any given point.
I was thinking I'd start charging for it when it has more features (hashtags, search, pictures) but right now you can sign up for free to try it out (ignore the current copy).
It's online at: https://days.app
[EDIT] since people seem to be visiting the half baked landing page, here's a screenshot of what it looks like inside: https://i.imgur.com/ZkWtgi5.png (sorry this is my actual journal lol)
And on mobile: https://i.imgur.com/XgWXuBt.png
(I know there are a million projects on here already but if you find this and try it, let me know what you like/dislike! Cheers)
In addition to that, I'm working on some BPM stuff, looking into ways to more tightly integrate AI/ML services with automated BPM processes.
I also need to build a couple of new bookcases for my living room, so I can take all of these books that are stacked on every flat surface in sight, and put them away properly.
One bit of warning... the first half of this list includes everything "AI" related I've read (or am currently reading) for about the past two years. I say "AI" and not "AGI" because I haven't always bothered to make the distinction. So some of this stuff may not be relevant to you.
FYI, this list (especially the first half) is a heterogeneous lot that varies considerably along the "pop sci" to "academic" axis, as well as the "applied" to "theoretical" axis.
I'm also leaving off (for now anyway) most the "related, but not specifically about AI" stuff, like books on Probability, Bayesian Statistics, Graph Theory, etc., and books that are more about contemporary "Machine Learning" and "Deep Learning" topics. I do believe that there is a connection though, and that DL may play a role in building a truly intelligent system, so when I write the expanded blog post, I'll include more of that stuff.
OK, With no further ado, the "AI stuff I've read recently" list.
0. Blackboard Systems - Robert Engelmore & Tony Morgan
1. The Age of Spiritual Machines - Ray Kurzweil
2. The Emotion Machine - Marvin Minsky
3. The Society of Mind - Marvin Minsky
4. Possible Minds: 25 Ways of Looking at AI - John Brockman (ed)
5. AI Super-Powers: China, Silicon Valley and the New World Order - Kai-Fu Lee (more meta than actually about AI per-se)
6. Artificial Intelligence In Practice - Bernard Marr
7. Architects of Intelligence - Martin Ford
8. Gödel, Escher, Bach - Douglas Hofstadter
9. Superintelligence - Nick Bostrom
10. The Master Algorithm - Pedro Domingos
11. On Intelligence - Jeff Hawkins
12. Unified Theories of Cognition - Alan Newell
13. The AGI Revolution - Ben Goertzel
14. How To Create A Mind - Ray Kurzweil
15. Case-Based Reasoning: A Textbook - Michael M. Richter & Rosina O. Weber
16. The Age of Intelligent Machines - Ray Kurzweil
17. The Singularity is Near - Ray Kurzweil
18. An Introduction to MultiAgent Systems - Michael J. Wooldridge
19. Engineering General Intelligence - Volume 1 - Ben Goertzel
20. Artificial Intelligence: A Modern Approach - Peter Norvig & Stuart Russell
----
Below here is the stuff that is in the "to read" queue. This part tends to run more to textbooks and more academic material and less of the "pop sci" stuff. The choices on this list were inspired by other reading and research I've done, which led me to believe this group of titles includes material that will be useful. YMMV.
21. Cause Effect Pairs in Machine Learning - Isabelle Guyon, Alexander Statnikov, & Berna Bakir Batu (eds)
22. Propositional, Probabilistic, and Evidential Reasoning: Integrating Numerical and Symbolic Approaches - Weiru Liu
23. Human Compatible - Stuart Russell
23. Rebooting AI - Gary Marcus & Ernest Davis
24. Artificial Intelligence - Melanie Mitchell
25. Protocol Analysis - K. Anders Ericsson & Herbert A. Simon
26. The Robot's Dilemma: The Frame Problem in Artificial Intelligence - Zenon W. Pylyshyn
27. Image and Mind - Stephen Michael Kosslyn
28. Elements of Episodic Memory - Endel Tulving
29. Things and Places: How The Mind Connects With The World - Zenon W. Pylyshyn
30. Information Algebras: Generic Structures for Inference - Jurg Kohlas
31. Probabilistic Logics and Probabilistic Networks - Rolf Haenni, Jan-Willem Romeijn, Gregory Wheeler & Jon Williamson
32. Knowledge-Based Systems in Artificial Intelligence - Randall Davis & Douglas B. Lenat
33. Building Large Knowledge-Based Systems - Douglas B. Lenat & R.V. Guha
34. Elements of Information Theory - Thomas M. Cover & Joy A. Thomas
35. The Bayesian Choice - Christian P. Robert
35. Machine Learning for Commonsense Reasoning Processes - Xenia Naidenova
36. Reinforcement Learning and Optimal Control - Dimitri P. Bertsekas
37. An Introduction to Kolmogorov Complexity and Its Applications - Ming Li & Paul Vitanyi
38. The Mechanical Mind: A Philosophical Introduction to Minds, Machines, and Mental Representation - Tim Crane
39. Constraining Cognitive Theories - Zenon W. Pylyshyn
40. Neuro-Dynamic Programming - Dimitri P. Bertsekas & John Tsitsiklis
41. The Language Instinct - Steven Pinker
42. How The Mind Works - Steven Pinker
43. Images and Words - Steven Pinker
44. Words and Rules - Steven Pinker
45. The Blank Slate - Steven Pinker
46. Consciousness Explained - Daniel Dennett
47. How to Build a Brain: A Neural Architecture for Biological Cognition - Chris Eliasmith
48. Introduction to Artificial Intelligence - Eugene Charniak & Drew McDermott
49. Metamagical Themas - Douglas Hofstadter
50. I Am A Strange Loop - Douglas Hofstadter
51. Fluid Concepts And Creative Analogies: Computer Models Of The Fundamental Mechanisms Of Thought - Douglas Hofstadter
52. Principles of Synthetic Intelligence - Joshua Bach
53. Anatomy of the Mind - Ron Sun
54. Generic Inference: A Unifying Theory for Automated Reasoning - Marc Pouly & Jurg Kohlas
55. Knowledge Representation, Reasoning, and the Design of Intelligent Agents: The Answer-Set Programming Approach - Michael Gelfond & Yulia Kahl
56. Semantic Networks: An Evidential Formalization and its Connectionist Realization - Lockendra Shastri
57. Automated Planning and Acting - Malik Ghallab, Dana Nau, & Paolo Traverso
58. How Can The Human Mind Occur in the Physical Universe? - John Anderson
59. Spiking Neuron Models - Wulfram Gerstner & Werner Kistler
60. Neural Engineering - Chris Eliasmith & Charles H. Anderson
61. Principles of Neural Design - Peter Sterling & Simon Laughlin
62. Semantic Information Processing - Marvin Minsky
63. The SOAR Cognitive Architecture - John Laird
64. The Architecture of Cognition - John Anderson
65. Human Associative Memory - John Anderson & Gordon E. Bower
66. Knowledge Representation & Reasoning - Ronald J. Brachman & Hector J. Levesque
67. Cognitive Architectures - Maria Isabel Aldinhas Ferreira, Joao Silva Sequeira, & Rodrigo Ventura (eds)
68. Scripts, Goals, and Planning - Roger C. Schank & Robert P. Abelson
69. Reasoning About Plans - James F. Allen, Henry A. Kautz, Richard N. Pelavin, & Josh D. Tenenberg
70. Generating Abstraction Hierarchies: An Automated Approach to Reducing Search in Planning - Craig A. Knoblock
71. Representations of Commonsense Knowledge - Ernest Davis
72. Approaches to Knowledge Representation - G.A. Ringland & D.A. Duce
73. Knowledge Representation - John F. Sowa
74. Conceptual Structures: Information Processing in Mind and Machine - John F. Sowa
75. Inside Computer Understanding - Roger C. Schank & Christopher K. Riesbeck
76. Integrating Rules and Connectionism for Robust Commonsense Reasoning - Ron Sun
77. Probabilistic Logic Networks - Ben Goertzel, et al.
78. The Subtlety of Sameness: A Theory and Computer Model of Analogy Making - Robert M. French
79. Analogy Making as Perception - Melanie Mitchell
80. Real World Reasoning - Ben Goertzel, et al.
81. Artificial General Intelligence - Ben Goertzel & Cassio Pennachin
82. The Hidden Pattern: A Patternist Philosophy of Mind - Ben Goertzel
83. Engineering General Intelligence - Volume 2 - Ben Goertzel, Cassio Pennachin, & Nil Geisweiller
84. Computation and Cognition - Zenon W. Pylyshyn
85. Universal Artificial Intelligence - Marcus Hutter
86. The Cambridge Handbook of Computational Psychology - Ron Sun
87. Handbook of Neuroevolution Through Erlang - Gene I. Sher
88. Readings in Cognitive Science: A Perspective from Psychology and Artificial Intelligence - Allan Collins & Edward E. Smith -- this one contains a LOT of seminal papers in the field, including one of the earliest papers on Semantic Networks by Ross Quillian. I actually put this on the wrong part of the list, as I'm about halfway through reading this one, but just remembered it and didn't want to renumber everything. Heh.
Eh, that's a pretty good chunk of the stuff I've got lying around here, waiting to be read. There's a handful of others, but my fingers are getting numb.
Right now the FPGA boots the PicoRV32 SoC example code out of the configuration SPI-flash memory of Lattice's ECP5 evaluation board (I started with the firmware in block-RAM, but now it runs right out of the SPI-flash). I also have interrupts working, and have the gcc header file macros for enabling/disabling interrupts and controlling the PicoRV32 timer. I will soon have much more (SDRAM controller, cache, many other peripherals..).
https://github.com/jhallen/radioanalyzer
Also I will port it to this very nice ULX3S board as soon as I get one:
> The end project is a low cost combination signal generator / oscilloscope for aligning antique radios that I eventually want to sell.
What do you mean by aligning antique radio? Could you please explain a little bit on this?
Are you using lattice tools to build or open source tools?
Also is it similar to Red Pitaya board?
I thought there had to be a better way, but I couldn't find one so I built Jargonaut (https://www.jargonaut.net). It helps you build a nice, crosslinked list of terms/definitions, and provides simple slack integrations to allow you to pull in a definition into slack.
I have lots of ideas to add more value, but I want to get a feeling from others on whether you would use such a specialized tool instead of your bog standard wiki. Would you consider parting with money for it for your team?
I ran ispell and didn't see any other typos, though ispell is far from perfect.
Time to do some digging. Thanks for the tip.
On a different note - have you consisdered doing some content marketing by making a public jargonaut for common development terms? My little brother is learning to code and he just asked me what the difference between .NET and C# was. I think learning programming is like this x10000 times. I've been daydreaming about making a public Wikipedia-style tech glossary site for at least a year or so. I think it'd be very useful but haven't gotten around to it (in a year so what does that tell you).
Yes, I suspect you are correct, which is my biggest misgiving about pursuing this product too much further. Unfortunately for me, new/small growing teams are my preferred niche!
> maybe_ to organizations that are a bit older or larger and have accumulated a lot of internal cruft
That's an interesting thought. That segment is a harder one to break into for a "solopreneur".
> On a different note - have you considered doing some content marketing by making a public jargonaut for common development terms?
Yes, I have actually. When trying to determine what other "glossary" solutions exists I found that there are quite a number glossaries that people appear to have put together as part of their content marketing play. One of the niches I could see Jargonaut fill is the place to go to publish a public glossary, although I am not sure the monetization angle there (apart from adverts).
One of the features I was thinking of building was a slack bot to ask people to add/update term definitions.
It has taken me some months, but I have CI/CD in place, some traction in twitter, and subscribed users on our home page.
I have bootstrapped the product so far. I'm the solo dev, designer, and creator.
Soon I will have a big upgrade to the AI anchor.
Let me know what you think https://twitter.com/nius_tv
Official home page https://nius.tv
I'm sceptical that people will want to watch an AI deliver news, but it's becoming more popular.
Just search "Reddit AMA" on Youtube, you'll find 100's of channels that have Text to Speech videos of Reddit content.
Good luck with the development of this!
It's massive (42k volunteers signed up) and keeps crashing slack, but it's also lots of fun.
I'm working on a PoC that helps with triaging cases and tracks them in an ITSM tool.
I call it a search engine for space objects. It's a personal initiative with the aim to do something meaningful around space situational awareness and space debris.
The tool aggregates datasets around objects tracked in space and then makes it searchable and visualised with webgl / react overlays.
It's a good learning experience to work on (relatively) high performance web apps with high fps requirements for the webgl interactions while using webworkers for all the heavy lifting around filtering data and interpolating orbit trajectories.
Have you considered rendering the WebGL scene to an Offscreen Canvas in a Web Worker? You lose the ability to process PointerEvents (since Web Workers can't access the DOM), but you can serialize PointerEvent data and send it to the Web Worker via postMessage. That does introduce a bit of latency (~0.5 ms) that might cause some jank since PointerEvents are emitted ~8ms. It's something I'm playing around with.
Neat project though! Stick with it! If you're looking for some ideas/inspiration, check out FreeFlyer: https://www.youtube.com/watch?v=Cwau4GrxuUU
I am using multiple webworkers for data handling aspects and orbit propagation. haven’t looked into rendering the webgl scene in a webworker yet, what would you say the main advantage is?
I made it so I can create a website of online adventures for people to play from their phone, tablet, or computer. I used to run an escape room business and I'm in the process of converting my closed rooms into online games. I'll be mixing up stories, puzzles, and answers a bit so they don't seem familiar to past players tho.
With the whole pandemic going on my business has died off but on the bright side I get more development time.
Should be live shortly. Having trouble deploying the landing page. https://detailingarsenal.com
Chimera is currently an HTTPS client, an HTTPS server, and a tool that downloads pricing data from AWS for no particular reason. Why? Because I can!
Had the idea a few weeks ago, but with most universities converting to online lectures and many businesses working from home it seems like there's a definite niche in the market for it. Most professors (especially non-STEM) are totally oblivious to anything other than death-by-PowerPoint when it comes to online lectures, and most businesses either snap a pic of a messy whiteboard for posterity or re-draw diagrams through software after they've proven to be worth preserving.
I also decided to show all the chord notes across the fretboard, rather than specific playable chord shapes. Both approaches are useful for different goals, but I wanted something that's more about leaning the fretboard than individual chords.
So so cool. Thank you for building this!
I am planning on learning pedal steel and also play 8 string dobro. I think this would be a huge asset for doing that. How hard is it to add a new "neck" and generate scales on it? I assume given a string tuning you just walk up the neck creating the next note for the scale as you go, right?
I also write software during the day, so let me know if I can help out :D
Also, the open G is not as I would expect, but I think the DGDGBD tuning is what people expect on guitar. Dobro uses GBDGBD tuning for open G, DADF#AD open D, 8 string dobro is GBDEGBDE. Would love to see those as well! Sorting out scales on an 8-string dobro is a brain melter, even worse for a pedal steel...
>Also, the open G is not as I would expect, but I think the DGDGBD tuning is what people expect on guitar.
You mean it's not what you'd expect for dobro, right? I haven't really played guitar in years, but I think that's right for guitar. I'll add a dobro section now, I just need to find the actual octaves for the notes in the tunings you list. Adding new tunings is just a simple-change [2] (though I may need to adjust mobile layout for more than six strings). I can add pedal steel, too. I wanted to add banjo, as well, but need to figure out that fifth string.
[1]: https://github.com/uhoh-itsmaciek/fretboard.cool [2]: https://github.com/uhoh-itsmaciek/fretboard.cool/blob/master...
Awesome, i'll check out the github repo and add a PR if I think of something to add! Thanks for adding those! I'll keep an eye on the site.
For dobro open G, an octave is four strings up or down. IE, if i'm play an A on the 1st (highest tuned) string at the 7th fret, another A can be found at the 7th fret of the 4th string.
Between strings, the steps between the strings varies so it's harder to have a single rule there.
1. FINALLY, reading, chewing and digesting LISP. I can see the 'magical' prowess in it- but still not fully there.
2. Formalizing and standardizing an algorithm for one-shot learning using 'old-school' machine learning techniques that is freaking light-weight. Performs well on my problem set i.e. recognizing users from their mouse patterns (with as little as 10 secs of activity). But standardizing it to test it and benchmarking and then hopefully releasing it. Publication implementing the algorithm got rejected though :(
3. Growing highest quality and fresh produce indoors. Covid-19 has impacted some of my personal financial capacity but still doing my best. hexafarms.com
4. Writing essays.
5. A DSL for API testing (with things like API chaining, replay attacks, etc.)- the idea is to stack features slowly and then put a UI on top of it. Something like BurpSuite for those in the cysec space, but for programmers and pointy-haired bosses alike.
In recent months I have been specifically working on making the compiler self-hosting. This has so far taken up more time than anticipated, as I had to rethink a lot of parts of the compiler (e.g. parts of the type system), and I didn't want to rush it.
With that said, progress is slowly improving as I'm making my way through implementing all the type checking rules. Hopefully in a few months the entire compiler is self-hosting.
Try it with 4+ players while on a video chat. We just play-tested it with 7 friends for 3 hours and had a lot of fun.
I'd like to target the JVM, so I'm currently in the midst of translating the original JS implementation into Java. This does unfortunately mean that there's not a whole lot to show (the code doesn't even build yet), but if you're curious you're welcome to look through the code [0] or drop a comment if you want to talk about it further!
Works with most of FLIR's camera cores (eg Lepton, Boson and Tau).
I'm also working on a system for detecting animals in aerial images in real time (on drones). I've spent a lot of time trying to automate as much of the hardware setup as possible using a mixture of Ansible and Docker. Currently private pending publication, but the whole platform will be open source (including ML pipeline, camera gimbal models, PCBs etc).
Remote Leaf[1] hand-picks thousands of remote jobs from 40+ remote job boards, 1200+ company career pages, Linkedin, Reddit, Facebook, Hacker News Hiring and only sends the ones that apply to you.
[1] - https://remoteleaf.com
> Jobs are tailored to your location and skills
I live near a metro area and have been asked dozens of times if I'd be cool 'coming in 1-2 days a week' even though the job listing says 'remote'.
I think, for a 100% remote job board, you may consider revising it to something less specific, but specific enough for taxes/residency/cost of living purposes.
> Jobs are tailored to your country and skills
If nothing else it's a pain point for job sites that I rarely see talked about so hopefully you find my reply somewhat useful
It makes it easy for data scientists to ship their trained machine learning models into prediction services for production use.
Key Features:
- Model packaging and dependency management
- Distribute your model as a docker image, CLI tool, PyPI package
- Adaptive Micro-batching in online API model server - this gives you an average 10-20x increase in throughput/overall performance compared to a regular flask API server implementation
- Model Management for teams
- Automated model deployment to AWS Lambda, AWS SageMaker and more
The extension code has also been made open source.
Hey, you asked.
In other words, I'm on a quest for the Holy Grail of Programming. ;)
[1]: https://github.com/huncwotjs/huncwot [2]: https://www.youtube.com/watch?v=Ox5P7QyL774
I'm now watching this space!
For the last 10+ years, I've been collecting a list of any movie mentioned on reddit or HN as being good or excellent. I also will add the Netflix top 100 DVDs each month (yes, I'm still a DVD Netflix subscriber!). I'll also add all of the academy award nominated movies (although most of those already show up in the Netflix 100).
That list has grown to about 650 movies now (fun fact, Netflix will only let your queue be 500 movies per profile).
They are all stored in my Netflix queue, so I can't share the list.
My first task is figuring out a better way to maintain the list outside of Netflix, and a way to export the Netflix list to the new method, as well as having it auto-import some top films lists automatically.
If anyone has any suggestions on what to use to keep track of the list or any easily importable "top movies" lists, I'd love to hear them!
On a side note, with the pervasiveness of widescreen TVs, I wonder how many people still know what letterboxing even is...
So I am starting with very little anecdotal/personal experience, relying on science and industry stuff, then adding more of a personal touch as I go, enough to make it enjoyable.
Hit me up if you'd like to read the first chapter or two, tell me how far along I am on these goals. My email is in my username at hotmail.com
An added feature could be a back end that alerts if a staff member begins to show signs of a fever.
Currently, there seems to be a shortage of low cost infrared temperature sensors. I'd also love to find a very small and low cost printer that supports this. So far, I have found some label makers that could work.
1. You can’t actually get an accurate read. Unless you are shining the IR beam into their rectum, surface temp means nothing. If you’ve ever had cold hands while the rest of you is warm you will know that you can’t read surface temps. This is why medical professionals only trust two temperatures: oral and rectal.
2. Even if you managed to do this, fever is a pretty late symptom. People are contagious far sooner than fever sets in when it comes to COVID-19.
3. This dehumanizes service workers. I would see this as a huge negative and would never patronize a business that required its workers to use a device like that.
Again, I admire the ingenuity, but I think this is a dead end project at best and will lead to lowering quality of life and service at worst.
I actually got this idea watching what they are doing in China, it looks like a very widespread practice. In fact, it looks like there are cities that are also taking the temperature of patrons going into store, getting on buses, etc...
So, in response to your points:
1. I see many devices in use that take a temp very quickly. I'll see how my sensors works, though.
2. While it is true that not everyone who is sick has a fever, pretty much, whoever has a fever is sick.
3. I am thinking about a different world than we have today, one where patrons will not shop in stores if they do not have some reassurances that the owners are taking care of the staff, and doing what they can to ensure that they are not a vector for spreading whatever virus is currently worrying everyone.
To be clear, I am not designing for a world that goes back to the pre-coronavirus status quo, and I am also not designing a system meant to stop the spread of a pandemic virus.
Again, thanks for your feedback. I'll see how the prototype goes, and I will keep you posted. Let me know if you have any more thoughts.
Kicked off the project by installing and configuring Arch+Wayland+Sway on an old MacBook Air precisely to my needs/desires to be used as a daily driver.
https://wirvsvirushackathon.org/?lang=en
Make an impact and give back!
I have been frustrated while learning this language because the Kanjis makes smooth reading almost impossible, and for me it has always been the fastest way to fluency in a language.
I am building a browser extension that will help anyone to read and browse the Japanese internet.
Here in Tokyo we are not quarantined, but most events have been canceled and I have been remote working for almost one month now. So I made a good progress.
I do not have a website yet, but I will ping you as soon as I have one (I also want to have a newsletter before release).
I am not sure how suited my tool will be for a beginner at first. It will probably be more useful for someone who already know the basics of the grammar (JLPT N3~N4 maybe). But I'd definitely love to make it useful for beginners too!
(Background: made a rails6 app for learning vietnamese and it looks similar. my main problem was to nail down the text to match the student’s level).
Also, I plan to focus on the challenges inherent to Japanese rather than extending my tool to other languages. The Japanese grammar being simple and regular, I am quite optimistic that I can show help about it without relying on raw translations. One challenge of Japanese is that a raw translation does not help to learn the readings/pronunciation and Kanjis, so it is in my experience almost completely useless for learning.
I also do not want to provide contents. I want the user to choose whatever he likes on internet (but I may recommend external interesting pages).
Some tools we've adopted and I'm learning about as we go: Grasshopper (for VoIP call forwarding), MS Teams (we dabbled with Slack, but ended up using Teams because of our VS subscription), Zoom (for demos), and Stripe/PayPal (to accept one-time payments online from our clients).
I'm the founder of CallStop, which is a better call manager and spam blocker for individuals and businesses, so that's why I'm curious.
We’re using Grasshopper for the latter. Our (pre-WFH) situation was that we had 9 landline phone numbers + fax, and had one phone number we publicly gave out as our business line with forwarding. Our support reps would just pick up whatever line was ringing.
The pandemic presented us the perfect opportunity to make a change. At first we were thinking of using Google Voice to forward to our team’s cell phones, but realized there were too many limitations using Google Voice. I hastily found Grasshopper and it came with the features we’ve been needing for in a call center, like greetings, extensions, and individual voicemails.
Our reps have reported receiving spam calls and robodialers on our landlines, but not enough for it to be too much of an issue.
Are there any other pain points/missing things for you with your current setup?
How did you get a virtual game set up? In the past I’ve used FaceTime, the Notes app, and the honor system that the people with the physical game wouldn’t look at the virtual person’s cards.
- Remade a small landingpage for tshirt-designs with motives for my hometown/area. Used a software called "Bootstrap Studio" for that. I think I found it through HN. Really like it for static one-pagers. Looking into doing more with that.
- Rebuilding an old commercial espresso machine. The electronics were fried, you can't get them as spare parts, so I'm doing a full rebuild. New casing, new electronics but the old mechanical parts. Waiting for the last exchange parts, then I will finish the mechanical work and can look into the electronics.
- Learning French via Duolingo. Been keeping it up for almost 30 days now, Homeoffice made some time for two or three more "lessons" a day. I like it so far.
- Maybe I should start meditating, but I'm not sure where/how to start. I looked into some apps but I find them rather distracting. Maybe I just need to sit in my bed for 10 minutes with closed eyes and everything and just focus on my breath every morning. Any recommendations on how to get this started?
In-app purchases? Mmm I thought you subscribed monthly and then it's all unlocked. I can share a free month to anyone so e-mail me (see my bio / description.) Worth the try.
It's not really a tutorial on meditation, but I've learned more than enough to get started, and it's really interesting to see where I've gotten since starting.
TaxAmmend.com was put on the back burner pending AmIAccessible.com
AmIAccessible.com was placed on the back burner pending my AWS Certifications.
My AWS Certifications were put on the back burner pending a Computer Forensics research paper into Consumer Grade Forensics.
My research paper is almost completed pending some Forensic Wipe testing using Roadkil's Diskwipe (don't use it, it just failed).
I am now rebuilding my Open Media Vault machine (as it has had a critical software failure), and rebuilding my small 1U penetration testing server, and creating a new forensics portable machine, and publishing a Computer Networks paper that I had kicking around since 2019.
Project one: Our company has moved as many people as possible to work from home. I have spent most of the week on MS Teams and Teamviewer getting people ready, installing softphones, showing them how to use VPNs etc.
For myself we have had some OK weather, so I have been playing with my bonsai trees. Mostly I have been taking trees that were supposed to be growing on, and instead losing patience and cutting bits off them. I'm finding it a very peaceful diversion.
If the weather turns bad I think I might make some model planes (plastic kits). Somehow I don't have the patience for computers in my free time atm.
the python one lets you go through a log file and filter the lines out based on statements like...
You can currently use it to say "give me all lines that contain "substrA" and "substrB" but not "substrC" or "substrD"."
This current python implementation can only do AND for requirements, and OR for negative requirements.
But, I realized that I wanted to do a filter that could handle things like "give me all the lines that contain ... ("substrA" or "substrB") AND ("substrC" or "substrD")" and that was when I realized that it needs to be an algebraic system.
Every time I launch a new idea, I hate wasting my time on writing some basic customer facing admin/console where customers can see their invoices, change payment method, access support tickets, make some configuration change.
I am creating something more generic where I can just plug in firebase, zendesk, stripe, Braintree etc api Keys and all the base functionality is there. Easily extendable through react plugins.
I've built a flight planning tool for complex itineraries https://flightnotebook.com/ (bad timing, I know)
Historical job vacancy tracking website https://careerspulse.com/
And topping it off with releasing a full-text search query builder for Postgres + Rails to github (https://github.com/wyozi/pg-searchable)
If comprehensive, the back-end employment data may be valuable to DIY quants. Consider selling it on Quandl or the like.
I heard from someone running one of those sites that it's very profitable though.
Your post has made me remember that someone gave me one of their kits as a gift in the late 90's but I have no clue where it could be now.
github.com/glouw/openempires
I just enjoy pain
Figured I'd take a stab at it myself. I have a big love for Starcraft II, and I am trying to incorporate as many elements from it into Age II.
Seemed like a good time and I needed something to get me off the computer and away from constantly looking at all of the news.
The first few I made were a little ugly and off. Now they are getting nicer and I'm faster. I've got 4 8 footers done. I'll start cutting them up and building some small things today.
I'm going to use some with my daughter to prototype the inside of van she's converting to travel and live in.
All Clear Weather: https://www.allclearweather.com/
I'm also hoping to use raw photos of the sky as weather data: after building a large training dataset of labelled photos, I think an ML classifier could begin to identify weather features in outdoor photos
Hopefully they're trying something out with forecasting!
If you want to be a more active weather participant check out the mPing project.
2. Now a days, people are more interested in interactive books where they can be also a part of the book and there are sounds, images but for authors creating a book on top of messaging application is not possible due to technical issues. So, To tackle this problem we are creating a Saas application where book authors can easily create an interactive book which going much into the technology.
More details about the application can be found here :
https://www.notion.so/Blinks-helping-authors-and-reader-4338...
I was only able to get a handful of keywords done and had to dropped it when I got out of college. Now I'm jumping back in to finish it and add more features.
Eventually I just put my rubbish in my bag until I got home. But there is an obscene amount of plastic packaging. I believe they burn or recycle it as least.
This is mostly fuelled now by feature requests where people are integrating forms and other services to report covid cases. Trying to help them for free and ensure they don’t have to pay for service as they are non profits. Partner not happy about these late nights:)
[1]: https://github.com/zserge/webview
It identifies code markers such as TODO, FIXME, HACK, XXX, etc (soon to be customizable) and surfaces them as cards in a web UI. There's a free and open-source CLI as well.
The web app is free for public repos and $3/month for private ones. I'm looking to add organization/team-based pricing soon too.
A feature that I'm hoping will have an impact will be a "TODO reminder" email that will email you within a configurable amount of time after a TODO is added to a codebase.
Right now it's just me working on it outside of the day job, I'm hoping I can turn it into a useful tool for developers!
The premise is simple - define arbitrary conditions on transactions or balances, and get webhooks or emails when those conditions fire on any of your bank accounts.
I have >10 bank accounts and was having trouble monitoring them. I use this to alert me of any activity, on any of my accounts, that is unexpected. I no longer need to log into banks. I also use it to alert me if my balance gets too low or too high in any account.
I've also deployed Lambda functions to e.g. post my utilities bill to Splitwise to automatically split with my roommates, or pipe all transactions into a Google sheet so I can analyze my spending over time.
It started out as a simple hobby project but has grown into an immensely useful tool in my day-to-day life.
It uses plaid under the hood, so I get read-only access to bank data. You can validate by inspecting network reqs - it just grabs a public token from plaid and sends it to my backend - I never see the bank creds. Whether you trust plaid is up to you.
/interpreter save "'https:'+REGEX('((?<=data-image=")
.*?(?=" data-))',GET('https://www.dilbert.com'));"
dilbert
and then write just: /dilbert
which shows the strip of the day on our channelstreams: http://ieeevr.org/2020/online/ schedule: http://ieeevr.org/2020/program/overview.html hashtag: https://twitter.com/hashtag/IEEEVR2020
Also working on a video-rich[1] tweet thread "Atoms are {little, balls, sticky, jiggly, bouncy, stacking, etc}", as motivation while working towards an exemplar of transformatively improved science education content, which I hope will speed conversations about that. Anyone have any favorite media of atoms?
Also on desktop panning using head tracking. Also on using RealSense t265 tracking cameras with Google Mediapipe's TF hand tracking.[2] Also on a next rev of DIY 3D shutter glasses. Also on... sigh.
[1] example media: balls https://www.youtube.com/watch?v=oSCX78-8-q0 , sticky https://i.insider.com/5249da00eab8ea2172fa799a?width=700&for... , ball in the ball (nuclei) https://www.youtube.com/watch?v=AVKZDmYrTHo [2] low-performance browser demo: https://blog.tensorflow.org/2020/03/face-and-hand-tracking-i...
However, I prefer the usability of an outliner. So I'm making a web app that is basically TheBrain but visualized as an outliner instead of a mind-map.
There's a prototype available here if the concept sounds interesting to anyone else: https://thinktool.io/
I'm also learning Flutter so I can make a desktop and tablet app to assist Game Masters in adding audio to their games- sound fx, ambiance, and music. Now that the quarantine is here I might see if I can make it compatible with Discord or Roll20.
Regarding the art...I feel you there. I know DrivethruRPG has some stock art for RPGs for sale, but am not sure how much of it is mech related.
I've been working on setting up a CouchDB 3.0 server on a DO vps. The CouchDB team has been busy as possible working with devs on reported issues so I'll be waiting for a .1 release before putting the new version into use but I love what they've done so far.
Next week I'll probably be digging into using Python to handle cgi routines needed for the apps I'm working on. I couldn't get CGI.pm to install on the Ubunbu 18.04 server I spun up, or find any Perl package at all that would install to handle CGI stuff.
Feeling a bit long in the tooth after that experience.
First, you intentionally add a website (e.g. https://facebook.com) to the list. Once you open that site in a new tab, a countdown begins. Unless you stop the countdown, the tab is closed once the countdown reaches 0.
I've been using this extension myself for a few days now. Up until now it seems ok.
- 3d visualization of the mental model of the code, based on static analysys, with a goal of drastically improving code navigation and comprehension, especially of large codebases. Currently for Go only, because Go OOP design unsurprisingly lacks ambiguities between language constructs and mental model blocks. I had WebGL-based prototype (written using GopherJS), but I see the future of this project only in VR/AR, so I'm exploring this space, trying to figure out what/how to do the next iteration in this emerging zoo of VR/AR frameworks. The logic behind this project and initial demo are in the blog post "Rethinking visual programming in Go", but it's a long read. https://divan.dev/posts/visual_programming_go/
- prototyping (docs and initial simulation) new messaging solution that is peer-to-peer first and is transport agnostic (i.e. will work over SDR in case of internet apocalypsis), and is aimed for the future stacks(IPv6/StarLink everywhere, NAT is in the computer archeology textbooks only). Plus configurable tradeoffs – instant delivery and offline storage (via federated server you own) vs non-instant but aggressive resilience to network disruption (should work over mesh networks), dark routing (for zero-trust hostile networks) vs fully exposing transport layer details (if you talk to your kid over your home wifi router, why would you care about hiding IP address or send your message to the datacenter across the globe). I spent some time in the messaging, and clearly see how many of the tradeoffs just push people to use centralized servers, and that makes sense and works fine, until it doesn't (think Telegram and Rostelecom IP addresses block). It'll probably have worse performance than current messengers, but it'll work when everything else is not. No links to share yet, sorry.
- txqr – I did an animated QR data transfer app in Go and Gomobile (https://github.com/divan/txqr), which uses fountain codes, but that was just for fun. Now, after working for a year or so with Flutter, I want to make a mobile/desktop/web app out of it (Flutter works with Gomobile) that people actually can use and/or embed into their apps, and that's on my backlog for side projects.
https://www.youtube.com/watch?v=uwPs_fR1TyQ
Right now I have two players able to see one another when they're in the same world/dungeon/room but they do not interact at all yet.
Next step is to synchronize some basic game state like pendants and crystals collected to allow some basic shared game progression. Maybe even sync up open/closed/bombed doors state per room.
Save restaurants makes it easy to search restaurants by neighborhood and see if they offer takeout, sell gift cards or are accepting donations (with direct links).
I built it in 2 days using Zeit next+now and Firebase for the db. It's crazy how easy it is to spin up simple projects using that stack.
Can you build faster than a virus?
Join us at http://covidaccelerator.com
The idea is that you can set up a meeting agenda, get everyone to add ideas, then discuss, vote and get consensus quickly:
https://getshuffleboard.com/?betaApproved=1
Also I film all my work on youtube: https://www.youtube.com/playlist?list=PLFP8wPiIB7kz7pbYCnjIc...
Basically I know I need to have a worthwhile video title, so I can't fiddle for more than a minute or two!
The guy either green screened in a room from Versailles or he's rather well off.
It is meant to be a native Github app. Feedback greatly appreciated https://giveshoutout.com/ (Landing page still in work)
The project is part of my work with the Mosaic Institute ( https://mosaicinstitute.ca/ ), in partnership with the St John of Jerusalem Eye Hospital Group ( https://bit.ly/3dljQ3H ).
SSD Nodes is a bootstrapped cloud hosting provider I've been working on since 2011. Our servers are 90% lower cost than DigitalOcean, Vultr, and Linode when you commit to 1 or 3 years in advance.
We recently launched a Performance line of servers leveraging NVMe technology that boasts millions of IOPS and up to 6,400MB/s disk throughput, while still being 75% lower cost than what you would pay with at competitors.
That's a tough ask from a new player. I wouldn't lead with that.
https://github.com/thejefflarson/little-cpu
I’m four instructions away from implementing the compressed extensions, and probably next week I’ll tackle the control and status registers. It uses an open source tool chain and is formally verified using riscv-formal. My hope is to eventually be able to compile some rust and get an fpga to blink an led :)
Lunar is a macOS app that can change your external monitor brightness and contrast based on your Macbook built-in display brightness (which already reacts to ambient lighting).
It can also change the brightness based on the sun position or can just add some hotkeys for you to change the brightness manually in case you are using a MacBook in clamshell mode, or a device without a built-in display like a Mac Mini
Lunar doesn't use dark software overlays, it actually changes the hardware monitor brightness/contrast using the standard DDC protocol that's been implemented in monitors for the last 20 years.
In the latest update, it also adds hotkeys for changing the monitor’s volume which was a very requested feature.
Right now I’m trying to make it work with all the esoteric setups that users have. As you can imagine, there are a lot of ways you can connect monitors to your device: hubs, docks, adapters, AirPlay, cables with missing wires etc.
While DDC works most of the time, I still have to implement all kinds of workarounds because the system doesn’t play well with those setups.
The code is a spaghetti mess of Swift because I didn’t know reactive frameworks for Swift existed at the time: https://github.com/alin23/Lunar
Problems arise when the connection between the device and the monitor(s) is not something you would expect, like Thunderbolt USB docks that multiplex the video connection but don't properly forward the DDC messages. That's where I'm constantly trying to find workarounds, mostly with the help of users that have the said setups.
I'm still looking for a better remote-debug tool to streamline this developer- user testing process. Right now I'm just asking users what doesn't work, trying to guess what's the problem, fixing that in code, compiling a beta version, sending the beta version to those users, get feedback, start over.
By the way, most of the Objective-C implementation of the DDC protocol was done by https://github.com/kfix . I just improved it a little for multi monitor and multi GPU setups.
With working from home and schools closed, I don't have much extra time, but the restructured day does mean I have pockets of time where I'd usually be out and about but can now be used at home.
I asked this [1] a few months ago and have wanted to this for a long time now. I was thinking of it kind of like a caching proxy layer for 3rd party API's, to mainly get around rate-limiting.
I'm hesitant to share it as I know it's quite buggy and a bit too simple at the moment. I've not tested it with enough variety of APIs and use cases. Plus the whole UI needs deleting and starting all over again, but built properly! With all those caveats, it's https://apiarchive.com/
1. wu -- written in Go some years ago, and actually pretty successful (as these things go). Picked up by a couple of distros, etc. It used the Weather Underground API, which was truly fantastic. But alas, they closed off free access to the API, and I had to shut down the project.
2. dsw -- wrote this one in C++. Uses the Dark Sky Weather API. The API is great -- maybe even better that WU -- but not quite as feature-rich as Weather Underground. Then I discovered that they don't want you to distribute your program and ask people to get an API key. So I shuttered that one too.
3. wwo -- another, fairly recent C++ effort that uses WeatherAPI.com. I like the way I designed this one, and the API itself is easy to work with, but honestly? The data just sucks. It's often wrong, too far behind, not enough of it, etc. So . . .
I am now working on a yet-to-be-named thing written in straight C that uses the NOAA API. I've stayed away from this API, but honestly, it's the one to use. JSON linked data all over the place, sort of cumbersome in some ways, but the data is awesome, and barring government shutdowns, the API is pretty much always on. Not sure what to call it. Sort of afraid to cloud the namespace with "noaa" (noah is also taken). But as you can see, I am a Serious Expert on cli weather apps, so maybe I'll just take one of those.
And that is what I am doing with my quarantine. Thanks for listening!
Also I actually never thought of this UI for a weather app. Dark Sky has been kinda my go to. Some name suggestions: nowa (noaa weather app), nwa (noaa weather app), wir (will it rain?), wli or rli (weather/rain line interface), OutdoorTemperatureAndHumidityDisplayManagerFactoryInterface (is you write it in Java).
You're a genius! I love "nowa." (though "OutdoorTemperatureAndHumidityDisplayManagerFactoryInterface" is tempting).
Key points:
* pfsense/opnsense support
* openvpn event parsing
* suricata/snort dashboards with interactive Maps support (MaxMind GeoIp fields, src -> dest locations, heatmap, etc.)
* deploy with ansible playbook, docker or script.
Almost finished project, you can spend hours in there. https://chemlambda.github.io
I made it to learn Elm and fell in love with the language. Lots of lessons learned, not only on the code side but also in terms of process, getting feedback, product design and such.
--
The last couple of months, I have been working on Paysly (https://paysly.io) to make it easier to accept payments online.
At its core, Paysly allows developers to create payment flows using Stripe Elements - all from the fronted. During development, I though it would also be cool if it supported the creation of dynamic Stripe Checkout flows from the frontend as well, and also provided a way to verify both kinds of payments using JWTs.
I think the tutorials are the easiest way to understand how Paysly works, and I have created examples for one-time and recurring payments using both Checkout or Elements in the docs (https://docs.paysly.io).
By signing up and linking a Stripe account, Paysly will generate both a live key (for regular payments), and a test key you can use to set up and test integrations.
I think that Paysly makes the (awesome) Stripe developer tool set even more simple to use, but I have been struggling to figure out how to find interested users(...).
--
The last bit is what I am working on now. Trying to figure out where to post/advertised to help devs writing payments integrations.
The concept is that you can push Messages to an append only log, but can only query them back out via Iterators. An Iterator is a map, filter, or reduce function that iterates over either a Log or another Iterator.
Iterators can be composed and optionally persisted. So the data can be transformed at query time, or persisted and just read from disk. Iterators allow you to start at an arbitrary message, so it can be used as a persisted message queue or similar.
I'm only a few commits in, and there isn't much to see yet. I'm really excited by the power and simplicity of the idea, and to have a lightweight Kafka alternative. Feel free to follow along if interested: https://github.com/badtuple/remits . If you feel like working on something in Rust, feel free to reach out on Github issues or email. It's always fun working with other people.
I see two challenges to current email marketing:
1) It’s tricky for senders to build an audience in a very crowded space - mind-share is coming at a premium.
2) Recipients are having to deal with more and more noise in their inboxes.
My solution is a topic-based email platform that lets recipients choose areas of interest which senders can then pay to broadcast to.
I am trying to make this possible in a totally private way - so senders will never see recipients’ email addresses or any demographic data; they will only be able to target groups of people (think FB ads).
On top of this, I see an opportunity to pass the financial gains onto recipients, so every message you read earns you money.
And to take it one step further, I want to promote ethical business by donating proceeds to the Golden Lion Tamarin fund to help preserve some of the world’s most endangered species and forests.
If any of this is appeals, I would love it if you’d sign up to the waitlist. I’m trying to gauge interest before I invest too much into it:
Currently looking at matter.js which was very easy to learn so far.
Excellent resource that gives you interesting instant feedback. Reminds me of learning Basic in the 80's.
here's a tour of the initial exhibition last year: https://lds.wistia.com/medias/4ucxldnz9n
if you or your friend is the operator of an art fair that'd like to move online, please do hit us up at hello at dot.gallery
Also building an outsourced, full-time, subscription-based digital marketer staffing / agency hybrid at GruntWorkers.com.
I ended up learning quite a bit about how email works and how to setup an email server from scratch. The email backend is written in Rust and hooks into a Postfix server as a filter. Since I am not storing any mail, I’d like to eventually migrate to either an LMTP server or a custom SMTP server.
I also used this as a chance to learn Ansible. I’ve been pretty impressed with how much easier server provisioning becomes, especially when compared to a more manual approach.
Currently, the mail backend is fully working for Dropbox. Right now, I am setting up a landing page to gauge interest. After that, most of the work will be on the web app side.
The project is open source, for now: https://github.com/aksiksi/vaulty
I've designed it with the use case of running multiple processes in a single container in mind. I know this is not a nice thing to do, but still people do it. I've not tried using it as an init system (yet) but it should be possible with the current features.
It's not released yet (https://federicoponzi.github.io/Horust/) but I hope to release it this week (MIT license). If anyone with some knowledge in Rust / Linux want to join the fun, feel free to hit me with a message @federico_ponzi.
Consider me interested. Contact me via the email listed in my profile.
Remember when we/our parents would save newspapers and magazines of significant events? We lost that now that so many publications have gone 100% digital.
This site is an exploration of that idea.
It makes recurring screenshots of different/ popular/niched news sites and magazines from around the world.
It builds on the simple screenshot site, a separate open-souce screenshot-as-a-service project.
I should mention the Newseum's "Todays Front Pages"[1] site had the same idea long before I did. This exists in the context of a proper Mesuem with dedicated resources and curators. Their front pages are really nice, high fidelity PDFs of the dailies. They also offer mobile applications. Check them out!
I'm currently working on an "evergreen playlist" feature, where the app would automatically remove tracks you skip often in those playlists. Thus keeping your playlists fresh / evergreen.
I'm going to start with something simple (e.g. removing based on some rules I decide initially - percentage played over multiple listens), but I'm planning on adding an ML algorithm that can figure out when to remove a song based on multiple criteria (e.g. stuff like how often you skipped songs that day, what genre they were etc.)
If anybody is looking for a nicer way to manage their playlists, give it a try and reach out – https://twitter.com/micktaggerapp
I needed to do this lately and my process was like: Make a window/screen capture with quicktime. Convert the capture to an animated gif with the ffmpeg command line utility. Find an easy image host to save the generate gif somewhere. This was all very cumbersome.
Your process even allows me to screengrab a single browser tab. Thank you so much!!!
It appears that everything is done clientside, but looking through the github code it's hard to imagine that it's done with so little code and no cloud/server side processing!
Indie game dev is my full time job, so this isn't so much a personal project as my regular job that I thankfully get to continue in my small home office. Getting to paint and animate and design monsters, as well as write code, or do the marketing parts - it's all interesting and engaging in different ways.
We write practical blog posts on growth like:
- Listle’s (YC S19) zero to 7000+ Users Strategy in <1 year (https://aflo.io/blog-post/Listles-YC-S19-zero-to-7000-Users-...)
- 100+ Places to Launch/Share your Product (https://aflo.io/blog-post/100-Places-to-Launch-Share-your-Pr...)
We're looking for feedback! #roastus
Lots of design work to do too but decent MVP. How are conversions?
Right now I am trying to make an archlinux IPFS mirror. There are existing projects like this but I wanted to save more history to avoid the issue where you get a 404 when installing a dependency if you haven't synced in a while. https://gitlab.com/kevincox/archlinux-ipfs-mirror/-/blob/mas...
I've also been updating a first-player-picker app that I made a long time ago. It's very lightweight, delivering the main functionality in <2KiB. https://gitlab.com/kevincox/playerone/-/blob/master/README.m...
I've already written a generator that makes 2D blueprints of buildings, with thick walls, openings, etc. Going 3D might be a little tricky but it should be fine.
When this will be finished I'll move on writing a good enough character controller with bullet-physics. I'm worried because I decided to use opengl since I have found no good alternative to ogre3D (I'm radically against bloated engines like unreal and unity, I need something very light and thin that does only one specialized thing, in this case 3D rendering), but since low-poly is trending it will be just as good, and this will probably allow me to have larger scenes.
I still have to make a finished terrain generator, but I already implemented many things like octaved perlin noise (with shaders so that I can regenerate and make quick edits), poisson discs with perlin noise. I also implemented a midpoint displacement+successive blur to make mountain erosion.
I'm planning to use some brush editor to manually create terrain zone layers at a very macro level, for things like biomes, elevation, seas, etc, so that the terrain generator can do the rest, and then put cities manually. I've seen some pretty impressive terrain generators, but I'd rather focus on cities that look almost real, with building interiors.
The goal is to have a very large quantity of explorable land, without needing level designers and level artists, while not sacrificing quality too much.
---
I've worked on a number of projects that needed some scheduling capabilities, like "Archive this object in 4 weeks", or "Make sure this process runs every 2 days."
Rather than rebuilding this logic, and for those who hate dealing with CRON syntax, I wanted to create a scheduling API.
My goals are to 1) make it useful, 2) make it easy for developers, and 3) keep it low-cost (using DynamoDB and Lambda).
You can set up schedules via the website, or programmatically using the API.
Feel free to poke around - it's close to launching but the back end is currently disabled.
If this service sounds useful, please add your email to be notified when it launches - https://timeytim.com.
(Thanks, and suggestions welcome!)
Under the hood, it’s a software modular synthesizer with certain limitations—for example, the modules can’t be connected in a cycle. The modules are connected with code in a simple language that checks units, so you write “500ms” instead of “0.5” if you need a 500ms delay. If you write 500Hz instead, that’s an error. This part already works.
On the surface, I’m figuring out how to expose the parameters with simple sliders and knobs in a web page. The idea is that you click a button like “explosion” and then tweak the knobs to get the explosion sound that you want. This is how SFXR (and as3fxr, BFXR, JFXR, etc) work, but they have a fairly limited set of sounds.
It is written in Python. A documentation is available[2].
I uses it since 2010. And I am quite happy with it. I started recently to work again on this old side project since I have some ideas in mind.
If you want to test it, there is an official instance[2]. Also there is a Dockerfile.
[1] https://git.sr.ht/~cedric/newspipe
[2] https://man.sr.ht/~cedric/newspipe
[4] https://github.com/sponsors/cedricbonhomme/ (optionally, if you decide to use it ;-)
Did that before, company tanked briefly before being profitable six years ago. Customers are still asking to bring the product back.
I though I give it a shot. We were five at the time for two such products. I figured I can do a single product with less features myself.
API changed on both sides (host app & renderer). Old codebase was C++ and I have limited rights to it.
I am writing the new product from scratch in Rust. I am probably the first person to write an AfterEffects plug-in in Rust. Luckily that app is now so old that the API is pure C99, great for Rust bindings. That's actually the most fun part of this. Rust is pure bliss. Particularly now that the community has moved to Discord feedback seems to be more instant than on IRC before.
Inspired by the explorables from "It's Nicky Case!"
I've spent a lot of time on optimizing the engine. Fortunately with correct techniques JVM is surprisingly efficient, so it is able to simulate single game (30 frames per second, around 110k frames in total, each with collisions, path finding & decision making) in ~900ms on single 2,4GHz core.
I'm far away from having anything usable (or fun to play), right now I'm working on team defense behavior, little GIF representing current state: https://gfycat.com/jampackedsparseindianglassfish
GPS Disciplined 100Mhz clock source. I've got the QRP Labs "fake" temperature controlled synthesizer, an Icebreaker FPGA board, and an Adafruit ultimate GPS with 1PPS output.
Reminder/message board which is two parts, a server that monitors a file for messages and puts the top 8 on an LED sign in my office/lab. A set of transponders that generate messages for the file. And a 'grooming' process that looks at the available messages and prioritizes them for the sign.
Moving my iBitsy LED clock over to a nice 64 x 64 LED panel. This is mostly 3D printing a case, and updating software on the ESP2866 controller using Micro/Circuit Python.
Building a NAND driver for an embedded system that is currently booting off internal flash. The NAND option lets you encrypt the firmware which is a handy feature and you can have larger boot images.
Debating ideas for future Pandemic prep with friends over zoom.
Working out aspects of DSP that I have code that implements but I don't feel I really understand as completely as I should. The goal here is just learning, especially about polyphase channelizers.
Building kits that I've bought but haven't assembled. (The "big" one is the replica IMSAI 8080)
Noodling on design ideas for 3D printing custom spacers so that I can stack test equipment without have to rack it. Vendors design their gear so when you have multiple instruments from them you can stack them on your bench, but when you mix vendors that falls apart. My thought is that you can 3D print pieces that adapt from one vendor to another.
Drilling down a rabbit hole while making a 3.3V -> 5V push-pull driver with 100mA sink and source current, at 50MHz. Ideally I'll end up with a design and layout that I can replicate 'n' times on a board to create an 'n' wide driver board. For bonus points I'd like to figure out if I could make it bi-directional so I've been looking at the circuit diagrams of FPGA and SoC pin circuits to get ideas of how they do that.
Why'd you choose 50MHz for push/pull capability? What does application does that high of a drive frequency unlock?
This frequency determines how many panels I can run from a single "port" which ultimately determines the maximum resolution I can use for a display.
You guys knows what is funny... The NUMBER ONE item on the list that is broken across multiple brands and over 90 stores.. is "LED LIGHTS". I find it funny since LED LIGHTS are always toted as having such a long life span.
Here is the demo: https://booktopus.com/yc_demo.mp4
On the App Store: https://apps.apple.com/app/apple-store/id1490757013?pt=12010...
Currently we support only Oxford explanatory dictionary & english-russian dictionary, but adding more languages soon
So we've been working on a "satirical social network," part fake LinkedIn, part The Onion, part something else, and right now we're calling it...ShlinkedIn.
It's been a ton of fun to work on, and we'd love any / all suggestions as we build it out!
Soft launched this week. Already getting some exciting results. Working through an issue with the South African based server this weekend because we think the ISP we're using has a crappy network and may have underspecced their servers severely which is causing results to drift way out of the mean. But could also be an overloaded internet over there. We'll probably take ZA offline until Monday. Everything else working great!
For example, read the classics in Japanese, take notes on the words you don't know, get them automatically translated, and then automatically generate flashcards to help you remember those words.
I've always wanted to read Kokoro from Natsume Soseki (perhaps the greatest Japanese novelist ever) in the original and this is helping me to get past the words I don't know.
If anyone is interested in playing with it I would love a to share: xrdawson@gmail.com.
Practicing the piano. I’ve been playing for around three months.
Sometimes it’s nice to step away from the computer keyboard.
I have selected MSP430 considering it has just 27 instructions and I love the architecture.
Resources would be Computer and CPU Architecture books.
My goal is to provide qualitative analysis on Git usage throughout the team and identify users who may require additional Git training. It is such a powerful tool but I see so many dev's still writing commit messages like "changes", "updates", "fix" multiple times per pull request.
I'd love to get some feedback
A Full featured managed radio calls ingest platform. Every call on every captured radio system is available live and archived. I'm currently doing some of the final beta development work before I make onboarding call ingestors available to the general public. We have 18 systems being sent to the platform at this time.
https://www.broadcastify.com/calls/
This will be part of a new direction for how Broadcastify takes in content and distributes it to end users.
Technologies used include:
DynamoDB, Redis, PHP/Mysql/Apache, Bootstrap, Lambda, NodeJS, Trunk-Recorder
I am also working on a private journaling app, with a mild mental-health focus, aimed at teenagers; the idea is that if your parents want to have access to your phone and keep track of what you do, maybe they'll at least be OK with privacy in the form of an app that doesn't have sharing or messaging, doesn't allow for images or video, but just let you write text or record audio messages that are guaranteed private by 256-bit symmetric-key cryptography. No more worrying that your mom might flip through your diary while cleaning your room!
Started because of frequent multitasking heavy work with limited resources, and I've found it to facilitate human context switching.
Open Beta (macOS) as soon as I finish license verification and delta updates.
Also working through Penetration Testing with Kali Linux (PWK) course toward the Offensive Security Certified Professional (OSCP) certification, and trying to write and record more music, and work out more at home.
Will this be free / will there be an unlimited length demo version?
There will likely be a one-time license fee (per major version). I'm implementing a trial period, but it will not be unlimited.
I built it because I'd been participating in a couple of bug bounty program and felt like I was just trying random mutations to see what broke things.
There are other web fuzzers out there, but they're super limited. They test each piece of API functionality in isolation, whereas my fuzzer can test sequences of calls that depend on each other.
I'm also trying to improve my drawing skills. It's a bit of a struggle, as it takes a lot more patience than most things I do on a daily basis.
I think taking an existing project and improving upon it, as opposed to starting a fresh new project, has helped me somewhat. I have to think less about how to get it started and whether the framework or style is right, because some of the code is already there.
It’s fun and I love writing and I try my best to write as much as I can.
Here’s the blog in case anyone wants to see it:
- VexFlow - https://vexflow.com - VexTab - https://vexflow.com/vextab - Pitchy Ninja - https://pitchy.ninja
Also been working on experiments for chord recognition and music transcription (writeups on my blog: https://0xfe.blogspot.com)
I just checked out pitchy.ninja, it's awesome! I've been struggling doing ear training and singing over the past decade. This will help!
As a side question, do you have any good resources or tips on creating music related applications?
Re: resources, really Google was my biggest resource as I was learning stuff. One book I really loved was "Signals, Sound, and Sensation" by William Hartmann which connected signal processing to human auditory processing -- I learned a ton from that book. For music notation, "Behind Bars" by Elaine Gould, which was super useful while building VexFlow.
The conversation helps you to narrow down what you're looking for. I.e. a combination between a chatbot and a search engine.
http://github.com/CalculatedContent/WeightWatcher
The weightwatcher lets you detect potential problems in a trained neural network
https://calculatedcontent.com/2020/02/16/weightwatcher-empir...
Also happen to be looking for a cofounder as well. I'm a developer myself but I'd love to partner with another product-minded dev or a product person with significant industry experience. Let me know if you're interested.
The catch in this one is I am using it to learn Julia, and I keep reworking stuff as I learn more. I want to be able to look back on the logs and see how I evolved. Here is a link if anyone is interested
I envision it like this: You log into your own domain to post content, this is shared with your followers (and available to anonymous visitors), then from your site's dashboard you can see and interact with the latest posts on your peer's websites. The hopeful result being distributed networks of creators. Instead of policies coming from one company in one country, creator's sites would be governed by their host in their preferred locale.
I've been thinking about this for a while and just started working in earnest this weekend. I've been spitballing it among my artist-friend circles with positive feedback. It does require commitment to invest the time and money to setup their own website, though I suppose it's possible for different services to exist that automate and federate hosting for them. Personally I've maintained my own gallery for years and I practice POSSE[1] but there's always that nagging reminder that the "elsewhere" has different motivations than just sharing my content.
[1] Publish (on your) Own Site, Syndicate Elsewhere: https://indieweb.org/POSSE
Yesterday my oldest started to use the Roblox editor. I am researching Roblox training courses (would love some suggestions). An hour ago I showed her Zork and introduced her to Inform. (http://inform7.com/)
She is coding as I type this. :-)
I started off making it for maps. Now I am trying to make a more generalized version. This is for learning biology with parts of a cell: https://qquiz.com/cell.html
With that I am mostly working on a geojson editor for creating and updating quizzes.
For the cell image, I cut the image into map tile layers by scripting imagemagick. These tiles are served from my server.
For the overlaid areas I use geojson data, which I create and update with a geojson editor I am working on. For actual maps I have https://qquiz.com/makegeo/e.html . An example of non-map images, https://qquiz.com/boat1/e.html . The editor lacks instructions still, but is pretty easy to use.
I've looked around a little bit but didn't find anything that serves as real inspiration. I'm really trying to build something uniquely for her and her colleague and then I'll see whether someone else finds value in it.
I'll keep you posted :)
I believe it works across most groups (early learners all the way through to university and professional development).
Initial idea https://t.co/7MvEMI5xSl
Further development of the framework and value proposition for learners and educators. I am also workong to develop/document examples is my current plan.
Why?
Because many lambda calculus interpreter variants "cheat" by using the lambda already built into the programming language being used.
So you don't really get to learn how the alpha-conversion, beta-reduction, and eta-conversion work, and so on, magic happens.
I have a hard time picturing things functionally and can't readily read Haskell or Coq or Idris or any of those so the many many lambda calculus toy interpreters out there are opaque to me. I can read procedural/imperative/object-oriented code so I thought I'd build it in Ruby, and put it on a website with documentation.
Currently struggling to get nameless representations working.
One nice design feature is that I've used Parslet which is a “A small Ruby library for constructing parsers in the PEG (Parsing Expression Grammar) fashion.”
Another feature is that I've built a suite a lambda expression test cases (about 60 in total) which believe it or not is unique afaict. You' be surprised at the corner cases.
Want to be able to switch between different evaluation strategies and language flavours. Want to add nice abstract syntax tree diagramming using D3.
Finally, once that base is finished I want to have a a crack at adding types :)
I’ve been using a lot of online web tools while at work or at home to prettify json, convert unix epoch timestamp or convert ipv4 address to integer, but always surprised that online tools out there are quite slow for what they’re doing because they post what I enter in the form and do the processing on the server side.
So I started writing a react.js single page web app (not single file any more tho) which does all the processing on the client browser without any server interaction (also there’s an exception) so you can see the result in real time as you type with no server round trip involved. Also thanks to the client side processing, you don’t need to worry about data privacy cause it’s all happening in your browser. Included tools are just quite random (pi approximation for example) cause I was adding anything that looks interesting to me at the monent.
Beware that some of the tools are buggy and might not be well supported, but I’ve had so much fun along the way and experienced a lot of client side web tech like react.js, service worker and an awesome tool like zeit.co now which I don’t get to play with that much as a back end dev.
I was frequently annoyed at the lack of middle ground between easy purpose-built image captioning tools (as opposed to general image editors like Gimp), and full blown video editors just to make animated memes.
I intend to use some of the extra home time to improve the UI and maybe start adding social features and content import from external urls/clipboard. The user experience is pretty rough now.
Not sure I want to host user generated content and deal with DMCA for a hobby project.
It's not open sourced (yet), but the fun facts are that it's Clojure/Clojurescript w/ Rum as a react wrapper for the frontend. Have to say - Clojure(script)'s immutable data model is a dream for handling undo/redo in content editing. It also makes the path to a multi-user editor a'la Google Docs pretty simple.
Video encoding to animated gif & webm uses:
https://github.com/Kagami/ffmpeg.js
It's an almost completely a client side app - the video encoding happens in browser so the user content remains private.
(edit: better words)
"Getting a bit RESTless in your apartment? To help fight the boredom, ReadMe is launching WAPI—an ephemeral live radio station that will air for only 24 hours. Tune in to talk about building developer experiences people love. We'll have a live chat, dozens of awesome guests joining us and a few surprises!"
I usually don't mention products I haven't completed yet, but considering this case in which we are all quarantined and getting more time to work on our projects, it has been a great excuse to work on it, and so, I'll tell you about it.
The concept behind it is: I've seen demo websites where people show off different things about their website or plugins or things they have made to potential customers or clients. They have their visitors go in and "try before you buy". Those visitors might make changes to the site and you have to go in and undo their changes. Or maybe manually run a restore feature or cron job to do it. Didn't find anything in the mainstream that does it. The web app + wordpress plugin will automatically do all of this for you so you don't have to worry about having to do it manually.
I'm almost finished with the WordPress plugin. The sign up feature works so you can at least create yourself an account. Can't do much more than that though, but for anyone interested, feel free to sign up and stay up to date on the latest progress. I do hope to be done with it by mid-April.
I want to evolve it to a quiet social network where the incentive is to nurture relationships with closed ones, not optimize for number of people seeing your posts.
I am writing a few thoughts about my journey here: https://blog.quidsentio.com
If you have used TradingView, MT4 or Zerodha based bots, you would have definitely faced automation and execution related problems that you can relate to.
Currently building the system, EAs and bots to help assist traders.
Podalong is (eventually) going to help connect listeners of their favorite podcasts with each other and in new ways with the podcasters themselves.
A lot of work still to go, but I’m more and more excited every day about its future.
Website is built with Elixir/Phoenix Framework, app is built using Flutter. I highly recommend both!
I'm including some nice metrics and examples like Swarmpit, Swarmprom, Grafana, Gitlab CE + Gitlab Runner and documentation using Docusaurus. It works with any amount of server nodes so it's easy to start with a single test server and expand as you go.
I'm planning to open-source it ASAP, but things take time.. Hopefully next week v0.1 is done. Mostly it's been a learning experience, finally getting more fluent with bash and learning about distributed systems and networking. I've used Dokku for years but I wanted more flexibility and experience. I've noticed that I learn better when I write about something, so I'm putting extra effort in writing documentation.
It's funny that this question comes up, I just thought about it today. We should have #madeinquarantine badges for our repo's!
K8S is often overkill for small and medium size projects, while Heroku sometimes is too simple.
I'm wondering why there is not much tooling around such cases, either we go all-in (k8s) or something very opinionated and simple (heroku).
To give you some background, I've been running multiple Ghost blogging platforms for quite sometime and have successfully automated a lot of the heavy lifting involved in hosting. I realised a lot of people around me are now using Ghost for their blogs too and they might not need the expensive hosting out there. So I'm working to provide an option to address this niche.
I’m using a Novaton Launchpad Mini for the buttons which is probably overkill but came already assembled and is easily controllable over MIDI.
For example here is the US:
https://coronavirus.projectpage.app/us
https://github.com/kennygrant/coronavirus
The data is based on the nightly time series from John Hopkins, based in turn on collated data from WHO and governments, which they have plotted here on a world map:
https://gisanddata.maps.arcgis.com/apps/opsdashboard/index.h...
I'd quite like to do a bar chart of cumulative deaths/cases per country as well. Unfortunately deaths is probably the most reliable measure when looking at growth. There are a few irregularities in the data I'd like to fix too - for example the UK has no regional breakdown.
Working on https://papiary.com - I’m starting off with a reader, putting a few public domain books on it, free to read without login. Hoping to get some buzz by asking people to tweet me about which books they want on next. Will add a paid Pro Reader plan that lets you choose better fonts (very high quality expensive ones) adjust the typesetting and theme, sync across devices, PDF downloads etc.
For the authors, I’ll write the first few booklets on it and then open it out to others, but so far I’m thinking direct payments and subscriptions into your Gumroad / Stripe / Paddle account, no commission. Manage all your readers as a list of email addresses, so easy export to Mailchimp or import off external sales. Will also handle demand curve pricing if you want. Can write in simple Markdown or the gold standard AsciiDoc. Will charge money making authors based on headcount, maybe $5 per 100 paying readers.
It's been a pretty wild ride and we've grown a lot since our launch 7 days ago, but building our infra with react + firebase made it pretty smooth in terms of scaling.
Come check it out at github.com/kenodressel/quarantine-hero
Project is aimed to build ui-components and build an abstraction around frameworks. It is a UI developer tool that is web based built on modern stack - ReactJS, Webpack and supported by public npm modules and most importantly babel-core.
UI-editor is also aimed to generate code cross frameworks and it currently can generate code for ReactJS and storybook out of the shelf.
Web development has been misguided a lot by mix of paradigm yet the problem remains the same.
Link to project : https://github.com/imvetri/ui-editor
Demo to project : https://imvetri.github.io/ui-editor.
If you use storybook try this1. UI-Editor -> Toolkit -> check "React - Storybook" button. 2. UI-Editor -> Components -> click "Page" component. 3. UI-Editor -> Components -> Page -> Export.
Extract the zip and import it in storybook project.
Go and PostgreSQL are currently supported, with Kotlin and MySQL support on the way.
Currently there is support for protocol-agnostic agents (just send whatever values you have via REST API and observe the dashboards in UI), or you can use existing agents for SNMP, ICMP, NetFlow.
If you give it a spin, I would be happy to hear from you, good or bad (via GitHub issues or info@grafolean.com).
It is not FOSS, license is Commons Clause + Apache. Not 100% sure about it, but it seems fair - the goal is to allow anyone to use fully featured version for free, with source available and sharing allowed (basically "Right to Repair"), but with a restriction on selling to 3rd parties, which allows me (or potential other future maintainers) to sell convenience - hosted service, support and similar. This is not set in stone though, so I would appreciate (constructive) feedback.
The idea is to embed in gzip metadata the tar file index, and compress the gzip using small chunks of 1MB, whose offsets are also indexed in the metadata.
Since the indexes are written in metadata fields, it is invisible for normal linear decompression.
Thank you for your input, I think it might be of greater value if I could index enough data to provide a FUSE filesystem instead of a simple archive utility. That's a great idea, I'll look into it.
To help people who value silence choose the quietest mac: https://quietmac.app/
A very small side-project that was something I wanted to do for a while.
There's no plans to monetise it, it's a resource for those who want a quiet desktop.
Mostly finished (not mobile friendly, yet)
Over the next few weeks, I will be polishing it and expanding the feature set, but that's not where most of my brain cycles will go, though.
I am still looking for marketing channels that will consistently bring right people to my website every month. A few things I am considering:
* Double down on writing. I do have a behind-the-scenes journal-y thing ... with 2 articles on it. It certainly needs more love. What I want to do:
1. every N days publish a "behind-the-scenes" story about running a one-person business
2. share it on relevant communities, get on some newsletters, and perhaps get some backlinks
3. build an email list
4. get organic traffic from search engines every month
* Double down on SEO. I have picked most of the low-hanging fruit already (technical & on-page SEO). I do have a single webpage that accounts for most of the organic search traffic (pretty low in absolute numbers), however, I feel like I'm missing on several adjacent keywords. Ungood!
* Start writing in-depth technical guides. You know, the ones that would rank for a whole slew of keywords, and bring in targeted traffic to the website. That's what DigitalOceans and Linodes of the world are doing, and I'm sure it does wonders for them.
I’m especially focused on the UI for the posting of a status page update. As our business offers multiple services and some can go down while others stay up. It can be cumbersome to deal with multiple data centers and services.
statuspage.io relies on third-party services for monitoring, while Hexadecimal provides monitoring in-house. That way you don't have to juggle between two services.
> I’m especially focused on the UI for the posting of a status page update
Status updates (both automatic and manual) is a feature I'll be shipping next. With manual updates, you'll be able to post them either via a Web UI or a Slack bot.
Ghosbusters ref: https://www.youtube.com/watch?v=FXMcbhn6Np0
More info on my YouTube channel (in French): https://youtu.be/pkoNW3ifuYE
[1] https://github.com/hediet/vscode-debug-visualizer/blob/maste...
Aside from that, I'm getting a lot of non-technical work done around the house, from painting to gardening.
The idea is to enter terms as you come across them. This could be from classroom materials such as a textbook, or from sources encountered in your daily life such as an article, book, or conversation. The terms entered become part of your repertoire. More frequently encountered terms are prioritized during study sessions. One of the difficult parts about learning Japanese and Chinese is the number of characters that must be learned. The app helps here too, by prioritizing the most commonly encountered characters as well.
Studying is done typical flash cards and a built-in writing journal. The flash cards are pretty simple to begin with but I imagine them getting more capable over time if the app catches on.
You can read more about it here: https://github.com/That3Percent/tree-buf
Also working on adding Java 14 support to zerocell[4] for mapping Excel rows to Java Records, efficiently!
[1]: https://github.com/reactor/reactor-netty
[2]: https://github.com/micronaut-projects/micronaut-core
I run a site [0] that has a lot of old and indie films. Some of these are really great, but terrible quality, because they are very old with very few copies in existence.
Proper restoration is a crazy time consuming process, and often requires you have access to some of the analog sources, and the machines to read them.
But... What if instead of a full restoration, you focus instead on just making it watchable? Allow some quality loss to trick the human eye into seeing what is important?
The best result so far is on The Great Train Robbery [1], and I have a brief breakdown of the process over here [2]. (I also put together a soundtrack for it, using a MIDI synth).
However... Currently the process is _slow_.
Restoring a full-length feature film, like I'm trying with the Blancheville Monster, will take months, despite it running in parallel to cover as many frames as the CPU/RAM combo can handle. (The Great Train Robbery took about 2 weeks).
Anything I can do to speed up the process is helpful. Unfortunately, the most time-consuming step (up to 20 seconds a frame, but usually around 1-2sec), is also the most important and I don't think I can optimise it. (The simplify step that uses k-means clustering).
The process is also not perfect yet. There is still too much quality loss. It's watchable, easily, but could still be better.
[1] https://sixteenmm.org/s/thegreattrainrobbery_2020
[2] https://sixteenmm.org/blog/20200318-Filmscope%20Progress
I'm currently rewriting it in PureScript. It's hard to get pure functional programming's foot in the door at work - understandably, the business case against it is reasonable given our employee demographics (i.e. mostly Java devs) - so this is the next best way to learn.
--
Bukubrow: https://github.com/SamHH/bukubrow-webext
Bukubrow PureScript dev branch: https://github.com/SamHH/bukubrow-webext/tree/purescript
Building a DC UPS for some of my infrastructure. I had been postponing this as long as my RIPE ATLAS probe was rockin' a 6-month-plus uptime, but a corrupted flash drive ended that. Soooo, time for a whole pile of Schottky diodes! :)
Tending to my pepper and tomato seedlings. It's too cold to put them outside yet, so they're in my kitchen oriel window alongside my GPS/GNSS monitoring receiver.
Learning systemd unit files so I can have better startup and log-rotate and stuff for said monitoring receiver.
Tinkering with Docker and TheLounge so I have a better handle on my always-online IRC client, and maybe other stuff that might end up running on that box.
A question I'd be interested in is discriminating organic, personal accounts from PR operations, but I didn't even formulate how to approach that yet...
I have over 18k installs https://www.figma.com/community/plugin/732240841094697441/Vi...
I'm currently working on a BE that would enable you to bring your own product data for a small fee. But as a designer, it takes far too much time. If there would be anyone who would like to join, let me know.
I wrote a small article about the stack behind it:
https://rojcyk.com/blog/what-i-learned-creating-my-first-fig...
The problem: spam calls. Most current solutions use blacklisting, which doesn't work well. CallStop uses whitelisting, and allows you to accept whitelist requests, pause filtering, or let groups use secret PIN "extensions" to reach you. You can revoke or edit these PINs at any time.
You can use CallStop to filter out 100% of spam on both cell phone numbers and landlines. CallStop has a free trial (30 days) and after that it's $6.99 per month. Right now, I have a paying user base and am working on scaling it.
Be it MySQL, PostgreSQL, JSON, CSV or Excel.
It's now also being my Bachelor thesis.
Recently we've been working hard on getting event time supporting exactly-once streaming into OctoSQL. Which means we currently (on the streaming branch) support Kafka as a datasource. Run using on-disk state (which allows grouping big datasets and is still blazingly fast thanks to Badger which we use as our underlying storage).
Obviously with streaming SQL extensions, which allow you to view partial results even with standard datasources. We use a dataflow-like retraction model for that.
We should have a big release out soon, so stay tuned!
https://www.sideprojectors.com
It's a marketplace for people to sell & buy their side projects. It started as a hackathon project and morphed itself into a community of its own.
Other than that, I've been trying to shore up some long standing bugs with a side project (hostedapachesolr.com) that I've been meaning to get around to for 3+ years.
Currently, the main way the tool shows you how to optimize your profit is to show how much money you can make from exercising early. We also help you exercise the options with no personal recourse to you if the company goes under (we take a % of the profit during liquidation).
This is a problem I have faced with my equity and my hope is that a tool like this can help others from making similar mistakes with their equity.
Check out the product at https://equifi.io/ and please let me know if you have any questions!
GoDBLedger: https://github.com/darcys22/godbledger
For the most part that backend of the system is working how I want. I now need to build more front end ways to communicate to it.
One of the front end methods I’m working on is programmable journal entries. So you write your journal entries in a JavaScript file which gets executed in the context of the accounting system so you will have full access to the account balances. However this is still early stages:
Yurnell:
GroceryFriends allows people in need to create a shopping list and post it so that other people who are feeling generous and/or have surplus can find people in their area in need of certain groceries and provide it for them.
I've noticed a lot of at-risk people are putting their lives on the line (and potentially spreading the virus) just to go shopping at stores that are sold out. Also, a lot of people are out of work and are completely screwed by this, struggling to provide for their families. It's absurd, and there should be an easier way to help for those willing.
Remote UX jobs: https://remotivo.com
Chrome extension: https://chrome.google.com/webstore/detail/ux-principles/lkoc...
I wanted to quickly create a site that worked well, runs on its own, content-driven and few other features that I wanted in it (e.g. membership, automated newsletters, ability to sell domain or get leads) - imagine a Reddit-like content aggregator site. So I created Newsy.
We're currently in beta so lots of bug fixing. Here's a few sites that run on Newsy.
Still early phases, so keeping it Android only for now, but I have been using Flutter so looking forward to expanding to iOS once I have the design flow and enough parity with the website.
I wanted more granularity in the score that I filtered out. I also wanted night mode (automatically switches with system chosen theme) especially in the comments section.
I have the code available here on GitHub [3] but it's not documented for use as I've only spent a couple days on it.
[1]: https://hacki.news
[2]: http://hckrnews.com
I'm working together with my son's teacher, who is also working at a local school. It's for kids that might not have the privilege of getting private lessons. I'm a backend developer, but I fell in love with Elm and built the site entirely with it. I host it on GCP.
I'd like to build a template system to support multiple languages, but I'm not sure the so-called calculation strategies kids in the Netherlands learn are the same for kids in other countries.
If you have kids in primary school: please give it a try and let me know what you think?
For example, if you want to transfer your stuff from Evernote into StandardNotes, you can export your note content as ENEX and use a conversion tool for it. https://dashboard.standardnotes.org/tools
Unfortunately neither export file nor the provided import tool handle Notebook info (StandardNotes doesn't have notebooks but it can approximated with tags).
So this tool creates some of that missing metadata that is extracted from the export service and is converted into a format that can understood by the import service.
Edit: I also just finished a blog post about Zhong Tai in software architecture: https://medium.com/@RayBB/what-is-zhong-tai-front-end-back-e...
Imagine google forms/wufoo/survey monkey with a few things that all those other apps don't, like;
-dynamically calculated values
-conditional validation for inputs
-hide/show options
-more that is still under construction
It could be used to take user input, but it also be a UI calculator tool that could be put up on the web very quickly, (not unlike howmuchtoiletpaper.com), allowing non-technical individuals to build dynamic user interfaces.
It still needs work, still trying to decide if it a SaaS app or a tool to build dynamic forms for people. It's inspired by the "configurator" part of a Configure Price Quote (CPQ) app. I'm hoping to release it by the end of spring 2020.
Our goal is improve 10x productivity for frontend engineer to write web and app UI code by using the editor. Our first version is target on the most popular design tools "sketch" and most popular FE framework "React"
The idea is developer just import the sketch and can generate the UI code with some editor adjustment
We have come out the demo video https://www.youtube.com/watch?v=Xzm0PF30Wwk and subscribe more info in the future via https://pxcode.io/studio
We would like to hear any feedback Thank you !
You set it up to monitor some data source and then it keeps track of when items are added/removed to/from it.
The items from all data sources can be tagged, have notes attached to them, etc.—then quickly re-discovered through the search interface.
Still early, but it's functional for Chrome bookmarks atm (should get local files handled in the next day or so): https://github.com/westoncb/mymex (scroll down for screenshots)
I think my emphasis is a little different since my primary interest is annotating/finding pieces of research. So I don't need to do any data analysis; instead having an efficient UI for tagging/adding notes to things and searching are the key features.
That said, it would still probably be better for me to use your lib to sync with the couple data sources I have in mind rather than rolling my own thing :)
One data source I didn't notice was for file system locations(but I may have just missed it)—this is a major one for me: I want to point it to a folder and have it keep the recursive contents synced. That's how I'll deal with local collections of e.g. PDFs.
Why? There are too many small businesses without a website. The upfront cost is too high to see if a website benefits their business. Wix and Squarespace and such are way too complex to use for an average small business owner(or say their kid). Most customers of these websites hire a 3rd party to develop their website. That costs more and takes longer.
Solution: if you can build a website without any training using an intuitive interface 10x quicker than what you thought it would take, most likely you build a website for your business yourself.
I have the MVP ready, and some customers. Currently I'm trying to scale to meet the demand. There is still a long journey ahead.
Using the SDK, I wrote a tooling similar to kubespray to create cluster, add node, delete node and delete cluster. https://debarshibasak.github.io/kubestrike/
Probably useless project, but learned a lot.
Resale is the fastest-growing category in online retail.
1 in 3 Gen Z shoppers are on it, 60% of women consider it. On top of that, there's the Marie Kondo effect and the current macro situation. I wanted to build something that lets you search in multiple places at once, so it's faster and you don't miss out on deals. No ads, no fake reviews.
I'm hungry for feedback! This project is also a winner on https://pioneer.app :)
Between being laid off then having to go on disability for a year just after that (2019 was fun), I need some additional skills in the current job market. It just so happens that this project covers all the bases: new language (Go, which I really like), cloud computing, cloud-native architecture (containers and much more), and mobile app development. I really hope I get a job before I'm finished but this is something I'm motivated to work on and will give me some experience that the next job may or may not.
Skincare for men (https://www.mendskin.co). I commented in a similar thread 6 months or so ago, and it’s been solid. First started as D2C, but that proved to be a terrible decision. D2C is effectively dead. Now working with online retailers and my own online store. Wasn’t profitable last year, but so far this year looks good because of our partners.
We focus on actual understanding and clear communication of tech expectations, personality and team fit, culture and meaningful benefits.
There’s too much bullshit going on.
I’m currently in the phase of doing demos for customers, it will soon be available at https://moonka.space.
Meanwhile, whether you’re a developer looking for a job in the midst of this turmoil or an entrepreneur looking for people, join us on Telegram, https://t.me/moonkaspace
It detects faces, objects, tags, extracts metadata and provides search interface and API. So you can for example find image with "cat and dog near river with some person" I want to build enterprise level image search :)
Google Images, for example, uses in most cases alt text and surrounding content. Google Photos is limited to personal collections.
I have finished prototype and now trying to convert it to startup
Demo https://app.khumbu.im/search/5dff72e66483e25b40e0222e info https://khumbu.im
Backstory: When scheduling my interview, I realized that the scheduler API didn't require auth while snooping around the console. Figured that most people looking for interview times would be tired of logging in several times a day just to find openings so I built this app a few weeks ago. Long term goal is to have it notify you when a slot + location you're interested in opens up but it's open source so anyone can have at it!
I mostly print nylons and PC and with the humidity here in HI it's a big pain to keep it dry enough. Even drying the spools in the oven doesn't really work because it takes days for the inner parts to dry out. So instead I'm building a heated and dehumidified box that will hold 8 spools and can feed the filament directly into the printer. The box itself is foam and fiberglass, the heater I'm reusing an old 3d printer bed heater, and the dehumidifier a thermoelectric element from a broken wine refrigerator.
Also made a Chrome Extension that automatically detects trials on websites and makes adding reminders pretty much just one click.
https://chrome.google.com/webstore/detail/bluefox/hikaomanci...
https://www.roseandrex.com/pages/resources - Index of Covid-19 related online resources for families
https://www.jqbx.fm - Listen to Spotify with friends online
https://www.zigpoll.com - Embeddable polling widget for websites.
With the bump in traffic on all the web properties due to the quarantine it's a been pretty hectic week! I wonder if y'all feel the same. Stay safe!
We just started the actual website this week after planning.
I teach programming courses, but I have always organized them around projects with real f2f communication and intensive critique of the work that is being done. This will have a heavy impact now, as none of the online tools (commercial such as Zoom, Webex, Kaldura, and open source Jitsi, BigBlueButton) can really help.
Most such technology is designed for online meetings of "disconnected" collaborators, and not as a real substitute for close collaborators where the whole body language takes part in the communication.
Backend, frontend, testing, team comms, CI/CD, cloud stuff etc. Mostly FOSS.
Friends and colleagues have been bugging me to get it done for a while, guess now is the time..
I recently decided to find 10 people who want to create interactive video projects or vlogs. Email me if you want one. I’m about 5/24 hours into a hackathon, streaming on Twitch and YouTube as ispoogedaily (iSpooge Daily) and email is in my profile. I’ve been dogfooding for 2 years and have gotten great feedback in 2 big hackathons.
1. A company playbook writing tool that helps you document team and company processes. It gives you a nice online browseable playbook, along with .epub and .mobi download.
2. Adding more advanced features to my https://yuml.me UML tool, including text formatting, UML packages, and a more succinct DSL.
3. A contract e-signing tool that doesn't suck on mobile. For some reason, every digital signature tool I use feels yucky.
4. A tool that lets you write out user stories and converts them into example mobile wireframes by parsing the text. You can also do point estimations for relative sizing.
When I looked for sites to run polls with ranked voting, I was surprised that nothing really fit my group's needs, so I figured I'd make one. The site is working (in MVP form), and I'll iterate on it more in the coming months. I'm hoping it can spread awareness about different voting schemes in addition to being a useful/simple tool for decision making.
Also, it was a fun way to learn ReasonML :)
It's not exactly the most useful site given the pandemic but hopefully people will derive some value out of it when this is all over.
I've also been digging into and learning more about how Git works under the hood.
Otherwise, I did find out that now I have the time to learn some things I wanted to for a long time (like OpenGL) or play guitar again, so that takes the remaining time.
Apart from that, planning the new version of LibHunt.
Unfortunately, I find myself too much distracted by Coronavirus news :/
Android : https://play.google.com/store/apps/details?id=io.dipla.app iOS : https://apps.apple.com/us/app/dipla/id1501533164
Enjoy !
We are also getting close to standing up a solution that allows Washington State and NY state and others to search for patients that took COVID tests but for whom they only have partial demographics. The solution will allow the states to find hospital visit history and full addresses.
This week has been very crazy for my company.
We are about 2 months from having a full enterprise-level SaaS product ready for production. ONC (HHS) funded it, so we will be publishing an open source version as well.
We have always thought there would be very little interest in anyone else wanting to use the open-source version, but it's possible that there would be far more interest now with the current crisis. We were trying to be ready for the upcoming hurricane season and Covid-19 took us off-guard.
I will post the open source repository on HN when it's available.
Currently building a web drawing program that can create custom data visualizations. Think “no code D3”.
It has required some pretty cool tech. I’ve essentially built a reactive expression evaluator in typescript. This allows me to do things like “rectangle.height = foo + bar”. It’ll then setup “foo” and “bar” as dependencies of “rectangle.height”, watch them for changes, re-evaluate the expression, and update the rectangles height.
Anything to show?
As for things to show, it's still quite early as I want to nail down the rendering engine. I've yet to create drawing tools which will allow me to more easily create complex visualizations.
Here's something I pretty quickly rigged up though which I think is fairly mesmerizing: https://imgur.com/a/ELhwWo5
The next step is to automate end-to-end testing of applications by reading the sent emails via the API. I am currently writing the documentation for that.
Please don't be put off by the homepage. I, a developer, "designed" it ;)
- security -- while most popular password managers use "military-grade" encryption, everything is still stored in the cloud, and the user does not have direct access to where the data is actually stored - customizability -- I want the freedom to design how passwords and encrypted data in whatever way I wish, not having to conform to a particular online UI or mobile app
JSON Password Manager is based on JSON, meaning all of your encrypted passwords and account data can be completely edited as plain JavaScript-like objects. You can store key value pairs for your username, password, and email of an account, and include an array of objects for your security questions, for example.
Every piece of data and JSON stored in JSON Password Manager is encrypted with AES-256 bit ("military-grade" encryption) and stored as hex in a singular file. The encryption key is derived (with pbkdf2) from the users chosen master password.
The desktop app allows users to download the encrypted data file with all their passwords and transfer/use it as they wish, which means users have complete control of their encrypted data.
When they want to view the data, they can just upload the file to the desktop app on their given device, enter the master password, and they can use the encrypted "vault" on that device.
JSON Password Manager is all completely open source (MIT License) on Github: https://github.com/xtrp/JSON-Password-Manager, which is great because any potential bugs, security problems, and feature updates can be done quickly and effectively.
I've currently built out the entire password manager (although not fully tested yet), and am just working on expanding the desktop app to include new features like a strong password generator, a settings tab, etc.
I'd love suggestions, so feel free to respond to this comment or email me at xtrp@xtrp.io.
Almost done!
I have your app on my phone.
Cheers
I released a super early alpha preview do-not-use-this-in-production version of a mini-framework to builds web apps with Svelte as a drop-in for the view layer and Crystal on the back end:
https://github.com/noahlh/celestite
It’s nothing fancy - but it works with existing Crystal web frameworks and, I hope, could be pretty cool eventually.
Would love feedback and extra pairs of eyes on it!
Some other things I might do (but currently am not because I am working on TeXnicard) include Free Hero Mesh (a puzzle game engine), and a media-independent poll/survey program I am writing.
Hence, I instead prefer to think of it as an audio/video tool somewhere between production and performance. Some out of date info can be found here: http://www.planmixplay.com
We were supposed to launch it to the market next month but because of the situation we are in we are adding a few more features that will make it even better to ensure proper communication in hectic environments and with a better overview of geo-fenced task lists and we are not going to charge until we are out on the other side of this.
You can see some screens here:
https://www.realwork.ai (the website is just a placeholder for now the pricing will free)
It’s free online at http://egypt.urnash.com/parallax/, if you have piles of money from your software job and you like what we’re doing then there’s a Patreon.
After talking to a lot of companies and engineers, it was crazy to see how long it takes them to create and deploy AI solutions.
I initially added it as an extension to my computer vision training, but am working on sharing it with everyone: https://www.seeme.ai/blog/seeme-ai-marketplace/
Have a look at our Quick Guides (https://github.com/zerotosingularity/seeme-quick-guides). These are literally a work in progress, but we are working on hard to get it right for early customers...
Other than that—not a coding project, but I have been messing with a novel cement composition. It's stalled due to coronavirus making it hard to get equipment.
I'm building a covid-19 visualization app, and today I've been working on an interactive comparison tool that allows you to set the base time for graphs, eg, "cases after confirmed case number 100".
First feedback has been great. It's in Spanish and although I intend to translate it to English, I want to prioritize other features like a table, and enriching my data with demographic and healthcare stats like hospital beds per thousand.
The first app [1] is pretty niche but a technically interesting challenge nonetheless; it's a fast auto-checkout bot to be used on Supreme [2]. There's other apps just like it but they all seemed to cost upwards of $50, so mine's available for around $10.
I know that Laravel for PHP and Rails in Ruby land have this kind of thing locked down, but I would have loved to have something like Laravel Spark on a standard JVM tech stack.
Would love to learn more about your project.
* Meaningful production Auth flows (emails etc) * Various admin functionalities (e.g. user management) * A way to get paid (e.g. Stripe integration) * Etc.
If there's a flavour of spring boot that comes with this out if the box then I'd be interested in using it.
Now I have this really stupid idea to replace my Lua scripts in a game engine with RISC-V binaries. So, if it's stupid and it works... I've already measured it to be wildly faster than Lua, but Lua has a convenient interface.
The emulator can be serialized to memory and restored elsewhere / later, but I have no idea what good that will do.
2. Launching https://cellars.la to support local Los Angeles restaurants
3. Help people navigate the stock market crisis by making free tools and resources available from my startup: https://blog.agentrisk.com/how-agentrisk-is-helping-investor...
Website: https://www.vbox.me/
It needs to be usable by regular people like my teacher.
Learned about ProseMirror here in the thread on Edtr.io. It's very 'lego-y' and I think it'll work well, but the complexity is off-putting.
I set out to build my own contenteditable based editor and after a couple weeks of banging my head on it, I do appreciate Prosemirror's very rigorous approach. I suspect it might be the best choice for me as well.
I've found myself reading the source code to figure out how to use it, after reading through the docs a couple times. I like the idea of not mutating but returning a new state object (and this idea is throughout).
Started reading his "Eloquent JavaScript"; I his code, and feel like I'm learning stuff. Just need to wrap my head around my requirements and data, then it'll be simpler.
- Writing a lot of music, both for practice and for an indie rhythm game some friends and I are developing.
- Spending a lot of time with my kid now that she’s home from school and I’m working from home without my commute sucking up time. We’ve been playing games together, building with LEGO, and just enjoying some carefree kid time.
- Cooking all meals at home. My spouse and I are both decent cooks but this is a good chance to get more practice in and try some new recipes.
- “Socializing” with friends online via Slack and online games.
Never underestimate the power of working with your hands. It has a wonderful effect on the mind. And when you are able to, get your motorcycle license. It’s the original social distancing machine, gets you into fresh air and the Rebel gets 65-70 mpg which will be great in the apocalypse.
Everything is completely remote. Meetings through zoom. Messages through WhatsApp and Slack. Project Management using trello. Code in github and gitlab. Video with the help of loom
We have open-sourced our code https://github.com/HorizonTechnologies/website
hashtag DDD, CQRS, etc. etc.
I really don't know much about either (learning a lot), and when I tell people about it their eyes glaze over but whatever I still wanna do it.
https://github.com/stochastic repo is still private but I'm willing to add anyone interested. I just don't want to be judged on how bad a programmer I am before I have time to clean it up a bit.
It's an OSS, you can check it out here: https://github.com/wasp-lang/wasp
Our latest demo, visually inspecting your web-app code: https://wasp-lang.dev/#wasp-inspector
Would love to hear what you think!
For the moment I just have the least secure setup possible using some JavaScript to hide the HTML until you add a password. Anyone who can inspect the page can bypass it.
I'm working on Superwet Fantastic.it's very tongue and cheek for now. But i'm making progress. Spent 3 months amassing a 30gb chord/tab data collection. Most of my time being cleaning the human uploaded mess. It's showing good potential now and I have a todo list hours long that hopefull will result in the model being powerful enough for commercial applications.
It's a blend of Jupyter Notebook, Project Iodide, JSFiddle, CodeSandbox, Glitch, and Observable.
Here are two screenshots:
- Notebook: https://i.imgur.com/nDUC817.png
- View Source: https://i.imgur.com/KhaiCfz.png
This is a tool that I wish existed after having worked with Jupyter notebooks a lot.
It came in very useful during our first remote kick-off, last monday.
Besides PokerTime I also created a remote retrospective app, also in Blazor, called "Return": https://github.com/Sebazzz/Return
https://github.com/crowd-tasking
I have a second personal project which also takes up some of my time. It is a chess game played on a smaller board (also has a blind mode).
I like to tinker with my fit to dial things in, but there are so many potential dimensions to tweak that it's easy to "get lost."
Long-term I envision it as version control for bike fit where you can make a change, test it, add some notes, and then decide whether or not to commit the change to your new baseline fit.
At this point, though, I've only implemented the input forms and a historical record.
Super easy slack app to send weekly check-ins to your distributed team and get back insights from them. Some of our early beta customers are using this to figure out who's disengaged, is everyone on same page for the project and who needs more 1:1 time with the manager etc
Excited to help grow the remote ecosystem. We just closed our first annual customer and super excited to keep heads down execute
I set up a secure way to connect to my application and you can demo that at https://viggy28.dev/book
Also wrote about how to set up here: https://viggy28.dev/article/how-to-secure-your-remote-applic...
You can select a text on any app and hit the configured shortcut to activate tooltip.
I program this tooltip to speed up several of my workflows like opening a JIRA ticket , opening a file in IntelliJ from a stacktrace, and show humand-readable time from seconds from epoch.
The tooltip has been very helpful to me, and it might be useful to you.
Check it out: https://github.com/tanin47/tip
The hack: It's a Google Calendar embedded into the README of a default Github Pages theme. Open to PRs lol.
I'm currently working on a blogging engine I call bittyblog
https://github.com/cluoma/bittyblog
I'm not a professional coder so it's mostly a toy project to get me programming and learn new things but I also use it for a couple of my blogs and add features as I want them.
It's CGI/fastCGI based with SQLite3 for storage. It integrates well with lighttpd because of its fastCGI process manager.
Often times, for any real-life data, there are exceptions to the data over different periods of time. Building complex queries that handles these exceptions while not having to hold these in my head gets to be challenging. I want to build these queries iteratively with contextual help and autocomplete. I wanted something that makes me feel like I'm touching the data directly.
If this is something you find yourself wanting, let me know.
This was triggered by realizing that with the whole family working from home (2x work, 1x college, 1x high school), our old slow ISP was going to be overwhelmed, so we signed up for new service.
Needed one for several of my sites, so decided to build it.
Started it earlier this year as a side project and meant to focus on it now as I don't have a real client. But honestly finding it hard to be very focused on anything at the moment.
It allows you to create your own workout from scratch and tracks your progress. I built it to give users users complete freedom over their workout; you control the sets/reps, the rest-time, and even notifications (or lack thereof).
The project is still in its infancy and I am adding new features as we speak (:
The basic idea is having the code itself drive the documentation. This means:
- Autocomplete that's powered by the codebase/previous docs. - Code tracking so documentation doesn't go stale. - Automatic updates when the changes are simple/minimal.
Would love to hear everyone's thoughts/feedback. Anything I'm missing?
If it’s interesting, drop me a msg. Planning to open source it (getamna.com)
https://repocounters.com This is a tool to track download history for Github releases over time. I'm working on adding support for Github packages. And Docker is next on the list as well.
The other project is Stilton. Not available yet. It is a centralized certificate issuance server for ACME protocol, primarily targeted for organizations running large number of domains and need TLS certs for them.
- https://www.youtube.com/watch?v=jNSpDIqCa5A
A better backend as a service:
- https://cloudsynth.com/products/core
Both are in limited preview! Email me at parham@cloudsynth.com if you want a try one :)
At its core it’s an elixir server which listens to Postgres’s built-in replication functionality, converts the byte stream to JSON, then blasts it out over websockets.
It’s working in production at a few companies now. My next goal is to build connectors to other systems like Kafka, SQS etc
https://jcubic.github.io/lips/
There is lot of features in devel branch I need to release soon version 0.21.0, but first I need to write unit tests.
It had a lot of traction the first day, but kind of lost traction. As long as people are able to reliably find the resources they need, then I’m OK with mine not being their first choice.
I enjoy doing interactive art on the side. e.g. https://nicholasbardy.com/, but I've always hacked it out on my own. I've recently been studying some of the state of the art techniques(Signed Distance Functions) and I'm excited to make something running on the GPU.
Over the holidays I studied Signed Distances func
Basically combines a markdown editor with full text search and all functionality is made accessible through global shortcuts so you can look up information without context switching.
It's free with plans to be open sourced in the next day or so. You can check it out here (https://mmap.it)
Do you have any additional metadata fields like "tags" or "categories" that can also be searched?
Teaser: https://klostermaier.de/abremind_demo/index.html#today
(hint: you can switch themes if your browser supports alternative stylesheets. In Firefox that is View > Use Style)
While that's cool and all. I didn't really like how it turned out so I started rewriting it. Right now I have an api, separate scrapers, and a discord bot. It all works independently so if one of them dies the rest keeps chugging along.
Now it's time to rewrite the twitter bot and I'm all good :-).
It's been received pretty well so far, so maybe some of you will enjoy it - https://www.youtube.com/watch?v=OBSW6TUB53c is probably the most rounded so far.
https://packagist.org/packages/mkcg/php-query-model
And also working on a search engine (in C).
I’m really excited about this even though I feel it’s a bit beyond my current abilities and may take awhile to complete. Seeing myself make small amounts of progress is exhilarating! :)
Coming from a software background it is really fun to learn about something completely different and new!
Background: I couldn't find a service that could tell me if the latest deploy of my web app would make it slower, so I decided to build it. Since getting started I've become aware of several competitors, but I enjoy solving problems in this space.
Demo - https://demo.nearbeach.org Site - https://nearbeach.org
Any feedback will be greatly appreciated. I am hoping to update the demo site in the next few days with a more stable version
Pricing model ala Github - open learning plans are free, per user pricing for private/team knowledge repos.
Let me know if you want to take it for a spin.
As the virus spreads, remote working gaining its well-deserved attention. From remote jobs listings to digital collaboration tools, profiles and admin panels both for candidates and employers, creating them a space for communication, following, shortlisting and starting a healthy hiring process.
I'm also working on "MakePostSell" a shop platform for selling digital downloads.
My wife who is a certified teacher is my first "customer" dog fooding the service: you may check it out her shop here:
Also hundreds of raspberry canes and strawberry plants. About 7 grape vines at year 5.
Top setting onions (walking onions). Parsnip, leaks, potatoes, lettuce, raddish, and snow peas.
Have some Wineberry and autumn olives that pioneeres on my land.
I'm hoping my 8 year old plum trees and 5 year old pawpaws bare fruit.
I'm my living room I have about 250 tomato plants, 50 eggplants, few hundred hot peppers.
http://sciugo.com/ gives biomedical researchers a repository to store and share their research.
The research is formatted in a way that emphasizes reproducibility and reusability by other researchers.
The site is being built for general biomedical research and its especially important during the current outbreak!
To be more exact, it visits the entire project's AST and generates mapping code (creates an AST that is outputed by the compiler to valid ts/js).
I figured, if I'm doing that for myself every time, I can do it once more and do it RIGHT, and then sell that to others in the same boat.
also a few games. here is one I made using my engine during ludum dare: http://mess110.github.io/html-games/ld/040/index.html
(2) Exploratory platform looking into 'cross silo' team coordination workflows and data sharing for healthcare workers and social services based on HL7 FHIR for preventive healthcare and post-intervention at home recovery care.
Both of these initiatives started long before COVID-19 was in the dictionary.
Basically providing you with a browsable “gallery” of data items from which you can filter, select and customize in order to assemble your newsletter avoiding repetitive copy/paste and styling.
Feedback is welcome :)
https://www.friendlyskies.net/intj/the-balance-first-approac...
It's helped me personally avoid a lot of overwork issues during the pandemic, and so far the feedback on it has been pretty good...I still have lots of new modules to publish as well.
Custom Android tablet with speech to text: getting my deaf grandmother out of social isolation.
Converting an old school moped to an electric high performance version: On hold due to COVID-19 ...
The idea being we have all this time on our hands, time we can use to fight the other global catastrophe that's unfolding — the climate crisis.
If anyone wants to chip in and help, please let me know!
https://howfunctional.com/viral-risk
Android-only right now. Precision is not the intention. Getting the ball rolling is.
The tracker is currently in prototype form so it may look or act a bit odd, not least because I quickly extended an existing platform.
If you're in this space at all, I'd love to chat!
I recently built https://www.warcache.com to save paint recipes and army lists for wargaming, or print out sheets of proxy cards for Underworlds.
It was fun to build, but kinda stuck thinking of what to add.
If anyone out there has a Python/Flask project they need help on, let me know. Stuck in the house, might as well help some projects.
1. Static site generator
2. Table component for vue.js that actually deliver solutions for common use cases I had in my projects lately but had to customize existing solutions to achieve what I needed.
3. Live tile pure js library (like from Windows phone OS) - just for fun
4. Form generator based on provided json structure for vue.js projects.
5. I occasionally write random tech articles on my website and also run weekly lifelog/devlog since the beginning of this year.
To add a new story, I just write a function that takes a webpage and returns the next link and chapter content. It's low enough overhead that I can easily add new stories.
[1]: https://github.com/shurcooL/home/compare/dev
That said, I don’t think I have any additional time due to quarantine.
Been focussing on the markdown editor and finishing up some new data portability (easy import / export of posts) over the last couple of days.
You can try out the editor here: https://able.bio/new
Would appreciate any feedback.
It is a grid of browsers; currently Chrome, Firefox and Edge, which can be used to run Puppeteer and Playwright scripts.
Your existing Puppeteer and Playwright scripts can be easily configured to connect to our grid. The advantage for the user is scalability, no maintenance and setup of infrastructure and support.
Usecases include generating PDFs and screenshot and headless browser testing.
The main idea was to make it super simple to survey random people about anything. Right now you ask a question along with submitting two images and the app posts a survey to 50 random users on MTurk.
Would like to expand features down the line to expand number of survey respondents and adding filtering etc.
Site: https://thisorthat.ai
Check it out at https://get.thread-app.com
It posts a message in your team chat when someone installs, upgrades or uninstalls a Helm chart from your Kubernetes cluster.
It's the first code I've written in a long time and I'm really enjoying it.
Currently only available in German, but it should be pretty much self-explanatory.
https://apps.apple.com/us/app/keyword-plus-seo-research/id14...
When a good part of the US population lives paycheck to paycheck, a single parking ticket can impact their finances. This summer, we will offer a kind of insurance for parking tickets (crowd sourced). Pay a small monthly fee, and we pay for your all tickets.
1 - for now the first two tickets are free, then you pay an increasing percentage of the ticket.
2 - rather then encourage people to get tickets, we use gamification to involve users in the community. We have programs and incentives to help people better drive and avoid tickets in the first place.
I wanted to make it dead simple to print a shipping label in seconds without having to create an account like you do everywhere else.
It's USA only for now, but noe that it's actually launched I can start making some improvements.
Planning tool https://github.com/andrey-utkin/taskdb/wiki
My intent is to stream development of both the libraries I develop/contribute to (graphql_flutter, built_graphql, gql), as well as complete examples that I will deploy and release
You can modify the code in the panel and copy/execute code console.
https://chrome.google.com/webstore/detail/gist-devtool-explo...
What features would you like to see in a iOS and Apple Watch reminder app.
Currently contemplated use-cases:
* Set schedule created with on-click (multiple reminders)
* soft confirm before next time
* escalating reminders if you don’t confirm
If you have any use-cases, suggestions or questions email me at: ragnar.azru@gmail.comNothing amazing, but I'm a noob so it is fun.
So, your wife gives you and the kids allowance? Very thoughtful of you to make her a tool. Maybe she'll even increase your allowance! :)
Not sure if I'll ever be able to share it since it feels like this lives in the grey zone legally.
Next step is adding more data (testing rate, state/county specific numbers, etc.)
Show me videos about machine learning which are no more than 30 minutes long, are entertaining and are recommended by academics.
It is combination of a web app which controls cron agents in other servers.
It is somewhat between your OS's job scheduling system (*nix cron/Windows Task Scheduler) and the very sophisticated workflow systems like Apache Airflow or Netflix Conductor.
The idea is to send an email every morning before the markets open so I can plan my day and decide if it’s time to buy, sell or hunker down.
More on our FB Page: https://www.facebook.com/komiti.media/
I suppose it's a bit like adding a copy-paste app to iOS, only for iOS to finally introduce that feature the next year.
My tasks for the coming days are extending the permission configuration and looking into generating fully typed client code for generated APIs :)
You can also create and share workouts made out of segments with friends. It will also have a Chrome plugin that enables you to lay your live statistics on top of let's say Youtube or Netflix.
Or at least that is the idea ;-)
Things I'm aiming to achieve during this downtime include setting up some onboarding emails, thinking about team functionality and figuring out the best way to upgrade the power users!
Help appreciated!
It's still a WIP. But I hope to release it in the next few weeks.
I’m building this because I think that building APIs is unnecessarily tedious and I wanted to he able to iterate on ideas faster.
It’s called Pragma (https://pragmalang.com). I would really appreciate any feedback.
I've used this pattern for automating stuff with my Point and Shoot Camera and Kindle. Attempting to make it simple and accessible to non techies
A book recommendation website (side project) where I compile verified book recommendations from the leaders in their fields. The product was #1 on Product Hunt a few days ago. Focusing on this really helps me stay sane with this quarantine thing.
Demo available on https://jitsi.retrolution.co/ (new features are visible in the chat section)
There's been some work on it in the past, but mostly papers or paid apps. I wanted to make something open source and free.
Instead of only relying on algorithms, you can group and keep tabs on exactly what you want. [1]
Currently supports reddit/YouTube. I hope to release an MVP soon.
I missed a listing with minimalist design, iCal support, RSS feeds, so I built it myself. You even get sweet karma points for contributing events :)
https://colinprince.com/promo.html
Any French language learners, hit me up and I can add you to Testflight, also apk for Android is available too.
Email in bio. Thanks!
Idea came about from having my own servers across so many providers and wanting to make it easier to manage.
I’m also planning to add email address obfuscation, similar to what sign-in with Apple provides. That should make it easy to forever unsubscribe from newsletters.
You start a 'crew' of friends, everyone pitches in $x amount each month to a communal fund, and you donate it together. You can also organize volunteer events.
It should go live in a few days on https://pandemicvolunteers.org
It will start with “Hospital Support Staff” working under nurses formed from SARS-CoV-2 immune volunteers.
https://github.com/crowd-tasking/awesome-crowdtasking
Feel free to check it out, its open source.
I have also been working on a more feature complete web based daw type system but that's been on and off for years.
In the current market situation we’re getting a good few people coming on board.
We are recruiting listeners, and looking for someone to help build an Android version!
The alpha version is available here: outsmart.superservice-international.com/
Tomorrow I'll probably work on Strawberry a GraphQL library for Python, I've been slacking a bit on it!
With all the uncertainty and risk to our personal finances, it seems fitting to work on a project that will (worst case) help me buckle down and improve my spending habits.
You’d be able to track long term and short term data distribution changes so you have an idea of when your model could be underperforming and will require retraining.
https://predictivehealthcare.pennmedicine.org/2020/03/14/acc...
Businesses are seeing insane volatility right now and we provide real-time alerts and reports for everything from revenue spikes to page speed lag to conversion rate drops from certain browsers.
If you have a Google Analytics tag on your site, you can set up the platform in a few clicks.
Not just serializing the graph and putting that in a DVCS, but an actual graph based DVCS which manages graphs (reflectively).
Features:
- Dead easy to book keeping
- Plain text export
- Focus on assets management
- Support many iOS platform only features
Currently this is Chinese only but I am looking to support English as well: https://xxz.jakehao.com
Our entire team is working from home now given the coronavirus situation.
Currently adding support for private sites and fully custom templates, to enable more use cases.
Https://proca.foundation
It's as well a pretext to learn react, graphql and elixir, all opensource, feel free to join and contribute ;)
Github.com/TechToThePeople/proca
The original codebase was written for iOS 4. Feels like a lifetime ago.
feedback more than welcome!
It is currently deployed on https://emojirama.io and all of the code is on GitLab here: https://gitlab.com/emojirama/game
I built it because I think PDFs look awful on mobile and are boring (static). Would love to hear your thoughts :)
- the final touches of a dead man switch feature - outlining a marketing/promotion plan for the app overall
You can follow our progress @ https://www.sendenvelope.com/blog
It seems to be going well, I should be able to release a first version soon.
Giving databases easy to use spreadsheet UI so they can be easily used as a content management system.
I’m getting bored of prime number puzzles though, so next up is dabbling in generative art and music.
Along with creating the app, I'm learning how to design it with figma.
I'm (finally) setting up a gitlab instance at home so that I can finally manage my (small) infra via gitlab-ci.
You want to master (or at least understand at a basic level) the core concept so that you can then adopt any technologies.
In that regard, my best find was "LDAP for rocket scientists" -- https://www.zytrax.com/books/ldap/ .
It's long and boring, but immensely worth it. I didn't really understand the why of LDAP until I read that guide.
Any feedback appreciated.
* User-defined node types * Node properties * Customizable node display & styling * Programmable hooks for various events * Links between nodes * Dynamic "query" nodes
Starting with a web interface.
It's almost ready for a ShowHN. I just have to get the websockets working!
discussion: https://github.com/leeoniya/uPlot/issues/107
also helping mom set herself up for continuing to teach Russian remotely via Zoom video, audio, screen-share + bi-directional android tablet control (via ADB debugging & https://github.com/Genymobile/scrcpy)
A place to share my and my wife's favorite music via youtube videos. It's typically house, dance, funk & disco old and modern.
I am working on halfchess.com
Would love to take your feedback.
It’s raising a child, and it’s left absolutely zero time and motivation to do anything else (I love it though).
Free centralized logging to be used during development which uses your browser as the data store (IndexedDB).
Features available
Live Streaming logs from multiple apps / tiers Complex Search (Mongo like queries) Views (Saved Search queries)
I built it to supplement a LinkedIn profile which is a more static representation of one’s skills and accomplishments.
Basically it’s the app where you can design and build app’s UI by drag & dropping real SwiftUI components.
Think of it as PKI for Let's Encrypt certificates. LE certs are great, but Certera is aiming to make it simpler, easier and more useful.
Snake in a Favicon (desktop only - arrow keys)
I know it's been done before, but I thought it was a fun project to throw together quickly.
Respectfully, I will suggest that "buggy and not ergonomic" are probably not the make-or-break issues for the dating space you are aiming for.
Intended as constructive feedback in hopes of helping you succeed.
Best of luck.
By that I mean being able to create a new DigitalOcean Droplet or Space, but also have the app install PostgreSQL on a droplet and enable backups.
This is my first real compiler and it's lots of fun!!! It's also my first time working with x86-64 assembler (compiler target).
I'll write a Show HN post when I finished it.
Edit: to expand, that means mostly client work, currently preparing/debugging/fixing for launch of their (client) second+third site using the same code base.
Soon to include data comparison.
Wanted a better way to layout reply-based social media sites. Please, post interesting programming related content!
(I used to develop live auction software.)
Here is one with Siebel of Ycombinator https://toonclip.com/fork?key1=1be05af368
Hoping to open-source it this weekend. Trying to create a better way for communities to coordinate aid.
It's a mindfulness game that aims to bring its players to a meditative state of flow. (through casual gameplay)
Its looking good so far :D
Maybe I’ll open source that Node.js Etcd-like KVS I wrote for the various micro services at work...
We're hoping this can help local restaurants survive COVID-19.
It's a tool for taking screenshots of tweets. It supports themes and has an API too.
I hope to finish it soon.
- Business - Personal Development - Professional Development - Behavioural Science - Science & Technology - Wellbeing
You can sign-up to the beta version at www.sivv.io - we are publishing new summaries daily. Any feedback would be very much appreciated - feel free to message me at info@sivv.io. Many thanks!
* a book of thousands of loglines to inspire writers with writer's block
* a vacation itinerary generator (started months ago, completely useless today)
Soundscapes and environmental music for calm and focus.
Using Modulate will spark joy among your team.
If this is something you are interested in, hit me up.
Its an aggregator for tech company rankings in tier list format. Takes all user generated tier lists, combines them, and shows a “master” list.
Been developing it on and off for some time though, but now have some extra time to put into it.
I built it mostly to organize and catalog guitar tutorials that I learn from.
Suggestions (if that's possible): - Buttons to quickly change the replay speed to 0.75 and 0.5 - Loop functionality
I'd also love if there was a timestamp-based "editing", where I could send someone a video with just the good parts, skipping over intros, ads and fluff.
Was planning to do some livestreaming of working on it too.
Mostly to hone my .Net Core skills and Angular.
You know, trying to keep my job.
Just fixed a long-standing bug where explosions stop happening. I haven't merged that branch yet though.
^ inspect webhooks and restful http requests
edit: Project will be called MajOS; the ethos is a witch's cabin in the woods.
https://github.com/2grep/coronavirus-diary/blob/develop/CONT...
1. A coding language for UI designers.
2. An online drawing game for my and my local friends.
Here's a sample of what we made: https://notrealnews.net
You can learn more at https://wordflow.dev
Improving my overall data integration skills
Training AI models with scikit learn
I'm trying to write an online clone of tichu, a card game that's famous in greece! :D
It's fun to play around with this game lib I found, maybe some state machines, some firebase deployments etc.
There is terrain deformation according to the force exerted by the object crashing into it. Ships colliding will either destroy or crush blocks according to that force. A "grid" is considered a powered assimilation of blocks, which could function as static "station" or moving vehicle. Thrust is measured in Newtons, block locations are measured in Cartesian coordinates. Everything has precise mass (kilogram) and this effects collision damage. Someone made a mod where there are aerodynamics (atmospheric force on fast traveling bodies, though this is computationally expensive). There is already a large workshop of mods that other players have made.
I say "near-true" physics because gravity of planets only stretches out a few kilometers above the planet. After that there is "zero" gravity and you can turn engines off and stay in that spot forever. Ship speeds are capped at 100 m/s. These limitations are required for now because computers cannot keep up with that many calculations especially if grids are interacting and causing terrain deformation or casting functions often.
There are sim speed drops during large scale events, and that is a challenge that draws me in. Keen uses rendering tricks for view distance draw and object visibility according to user settings (reflecting the power of their PC), eventually I'd like to standardize things so that players could interact planet-side without trees disappearing and nullifying camouflage attempts.
The vanilla game requires you to find and extract ore (iron, magnesium, nickel, platinum, cobalt, silver, gold, uranium, more could be added if you wish). These elements can produce things that somewhat reflect their utility IRL, then they are refined using energy (solar, wind, battery, nuclear, hydrogen). Then produced into components that you weld into the block for its completion.
When you join an official server right now, you are confined to a max speed, as this is a safety measure to prevent the game from crashing. A server sets up conditions for players to build in their secret remote spot away from everyone else, though sometimes they will group into factions. There is seldom any interaction and NPC ships are randomly spawned in near the player, flying in a straight line - they have no deeper function and they are meant to be your salvage.
My big picture is that there should be no speed limit, but players locations give off visual signatures if they want to go fast all the time. Space implies distance, and distance implies travel, which implies a set amount of time. Controlling this time would be key to bringing players together much more often, and we will remove risk of their creations being destroyed (automated respawn, at some sort of liquidity cost, which players will be ultimately competing for by chasing objectives that the game already allows - mining and transporting mass).
I want there to be a real functioning economy, where dumping a load of ore on the market has real repercussions, like EVE Online. If you see the price of iron go down fast, you'll know this has happened. So a player gets a huge cash payout, even though they are selling far below market rates because they wants to "get rid" of bulk iron (which costs them energy and time, of either him or his bots). Because of this event, you as a market participant can buy that up and the reduced price, and have a cheaper source of iron that takes you less time (transport). AI agents will also respond to these events in varying degrees of effectiveness, in order to create competition that economically active players must consider. We want the higher level players to have production assets and ownership in the economy, whereas newcomers can choose to pirate, pillage, or mercenary contracts which rewards them with liquidity if they succeed, which results in them being able to buy equipment quickly and return to combat, but other players may be funding this behavior by selling the ships and weapons produced with ore and energy.
I said big picture because all of these things would come in time only after some sort of standardized transport system was put into place, which the game needs now (it currently uses a simple jump drive which makes you suddenly appear in a new spot) - if we allow extremely fast travel speeds there cannot be collisions otherwise the SIM speed will drop.
Since there are so many physics elements, this game feels like a canvas and I'd eventually want to implement concepts to suggest new technologies that actually may be up and coming in real life. Think of it as a sort of education platform in that regard, but when you don't want to learn, you can just go and realistically blow up space ships and compete on a leaderboard.
specifically, writing audio plugins for VCV Rack and VST3.
Like a podcast player with Wikipedia and Encyclopedia Britanica audio content.
1) Neural approximation of surface light scattering (learned BSDF approximations, in other words). Historically, real time BSDFs used in games have been statistical models that make quite a few simplifying assumptions. GGX and other modern BRDFs do an admirable job and get about 90% of the way there, but creating new surface models is very time consuming. You need a mostly-unique model for retroreflective cloth, another for faraway swaying grass, another for plastics, another for skin, and so on. It's doable (and much has been done), but the process is far from easy.
So, an attempt at a workaround: trace trillions of statistically modeled paths and use the resulting distributions to train a small network that can be baked into an efficient ALU-only shader representation. Results are promising so far: https://twitter.com/RossNordby/status/1241224996518838272
Added bonus: as a part of this process, you get a PDF/importance sampling network for ~free.
2) ML applied to physically simulated character animation. Lots of neat work in this field already- the recent motion matching -> RL balancing paper seems like a very promising path for reducing the size of RL's responsibility: https://montreal.ubisoft.com/en/drecon-data-driven-responsiv...
My own work is still in 'side project' territory and I haven't exactly caught up to SOTA (https://www.youtube.com/watch?v=Haz9o3lbJJQ), but there are a bunch of things I'm looking forward to trying. Different heuristics (muscular control delay, effort minimization, etc.), some variants of off policy learning, different exploration approaches, some low level architecture tweaks, and so on.
3) Gradually resurrecting and modernizing a bitrotted renderer from a few years ago (https://www.youtube.com/watch?v=mIax_ProQ8c) and expanding its functionality. Beyond just fixing the massive problems it has accumulated, I'd like to flesh out a full surface space rendering pipeline. All shading would be computed on the surfaces of objects (and, where appropriate, in volumes) rather than in screenspace, so temporal reprojection is made far easier and there's no geometric blurring. Final rasterization is extremely cheap (~1 texture sample read) and can be decoupled from shading, so with 144hz+ geometric rendering in combination with late latched camera input, you can get application contribution to display latency below 10ms pretty easily.
The surface space caches and decoupling also give you a path towards tons of other interesting approaches- surface space shadow maps, low resolution directional occlusion and global illumination caches, conetraceable prefiltered surface representations, and all sorts of cool stuff.
4) Continuing to improve the physics engine (https://github.com/bepu/bepuphysics2). It exited beta last year, but there is always more to do. Next target is the tree structure used by meshes and the broad phase. While it is more than an order of magnitude faster than v1's, it should be possible to extract more parallelism, eliminate the need for a separate cache optimizer step, and cut down the aggressiveness of the static tree refinement. Simulations with hundreds of thousands of sleeping or static objects could see some significant gains, among other things.
Was also considering training a network to compress in-memory solver data since, on manycore AVX2 capable systems, the solver is always memory bandwidth bound, but down that path may lie madness... maybe not everything needs to have DL thrown at it. Maybe.
They liked the idea, so we were live, and they threw paper bookings away. 100+ users in a few weeks. It was little bit of pressure to get things right, but after fixing bugs, I was pretty satisfied with first alpha version, which was basically MVP and POC (proof of concept).
Then another club joined and there was around 150 users very fast.
I expand app so players can have their own ratings when they store their results. It was pretty fun to watch how everything suddenly changes. Players started to have conversions about their rankings, and they started to play more tennis. They have all history now for their matches, so no more 'I beat you that time, how can you not remember that :)"
I wrote some cool stuff too, like module for leagues and tournaments, which we organised under our Sliceer brand. We have pretty successful league and tournament with over 150 players.
We expand reservations to more clubs outside my hometown, and we are trying to reach even more.
I have some income from app too, but it's very basic, mostly from Premium users who can see little bit more advanced features like 'one sign in', i.e. non Premium users have to login every two hours, etc.
Now, I'm improving registration page which has to be very simple and fun. So I wrote some 'onbording' process to make it even simpler for users to sign in. There is little bit more data then just email, so it has to be fun. Here is a short video https://imgur.com/B6g0YwX
This year we will be in more clubs, and with bigger tournament under our belt (waiting for corona shit to be over).
I like what I'm doing so far, and I'm enjoying building software that other people are using, which is in fact solving real problem. I see a lot of things that I can improve, but for now, I'm sticking to booking module to be the best it can be, so people will be forced to use it. I want to be that good.
For now, I have little less than 600 registered users, of which - in tennis season - 100 and more are using app every day, and there is around 1000 active users per month (this numbers of active users are from last year, still waiting new season to start). We have one guy who recently passed 100 matches!
For now, we are operating only in Croatia, and app is only translated in Croatian, but I'm looking forward to translate it to other languages so other people can use it.
And, yes, booking module (what I have so far) is free for all clubs. Advanced features like statistics and some custom logic for clubs is payed separately - already have on club with custom logic (payed).
If you have any questions I would love to answer them.
Sasa
I compiled the list of companies originally from the answers to DHH's tweets and now people can add their own companies too
The development philosophy with Distilled was to have a very, very small but flexible API, and to basically try to get out of your way. Distilled takes the view that some parts of testing are a lot easier than people think, so it explicitly doesn't do those things. It doesn't give you a test harness out of the box, it doesn't give you a `beforeEach`, stuff like that. It gives you a very solid, very predictable base that you can very quickly morph in different directions. I've been using Distilled for ~2 years at this point, and it's been a mild revolution in how I approach testing.
So the philosophy with Raise is very similar. With Raise, there are no built-in transpilers or templating engines, there is no CLI. I expect you to do whatever text transformation you need yourself, either manually or through a 3rd-party library. What Raise does do is make it very easy to recursively pipe directories through transform functions, and very easy to build complicated transforms.
So if you want to compile a bunch of markdown files:
await Raise({
input: './source',
output: './public',
transform: {
'**/*.md': async (info) => ({
[`${info.filename}.html`]: marked(await info.contents())
})
}
});
And you can also do fun things like recursively return transforms, which makes Raise really easy to extend and adapt to different projects. So for example, if your sitemap was being managed by a CSV file or something: await Raise({
input: './source',
output: './public',
transform: {
/* structure: "page_name", "page_location" */
'pages.csv': async (info) => {
let pages = parse(await info.contents('utf8'));
return pages.reduce((result, page) => {
result[page[1]] = async (info) => ({
[page[0]]: marked(await info.contents())
})
}, {});
}
}
});
There are a few other cool tricks you can pull with it, but they're hard to explain in small code samples. But you're not getting any transforms for free, and I'm not trying to intuit anything about the structure of your site. There's no magical behavior. But what you get in return for that is an API that is extremely consistent, extremely predictable, very easy to learn, and very easy to adapt to novel situations.Still a work in progress, but I should be done with the last few chores for the alpha within the next few days, at which point I'm going to start testing it out by converting some of my own sites to use this as the builder.
Its based on a (heavily modified) Chrome codebase, and the application sdk its in Swift and later also one for C++.
Apart from the application process use to remote render the UI, i have a "instance" process that run for the "apps" that works for handling the RPC messages (which is in gRPC).
The instance process, will expose the RPC interfaces as in a background service, where the RPC is designed by the app developer accordingly to its needs. (For instance it can even control when to launch the app window).
The RPC can be exposed to the outside or only internal, and im using the bittorrent DHT as an update service with a constant address that the app developer can share so others can install and update the apps.
The application is container like, where you can have key-value databases and files already there. So when you launch the instance process (aka. the service process) it can use this persistent layer as its state. Files, databases, assets, applications and the shared module to be loaded by the instance process will be all there already (as in zip, git or docker).
On top of that there will be the common window, the same as browsers, only that its shared by installed applications that was synced through torrent.
The cool thing is that giving theres a instance/daemon process for each app, they can run and handle RPC' s or network in the background and notify you about events, where you can optionally launch the app UI to see them.
(Eg. a messenger can receive messages via RPC, handle them in the instance process, and persist them without any UI, than let you know about it through the common window, where you can launch the new UI)
(Im also planning to let install in "standalone mode" where it will install and be exposed as a ordinary app in the native OS)
The SDK will have direct access to the web layer, and it will be easy to develop a web browser for instance. The rendering layer is the same used by chrome and blink.
The biggest motivations to this, was not only something i've always wanted to have, but also political, as in civil rigts, giving it will give us more control of our digital lives.
Imagine a search index like Google only being able to index your contents if you allow them, and only what you want. Or the capacity to have your personal list of friends and the social networks will have access to the list if you want and not own them like they do now.
Im about to launch it in about a month, but giving i was already in a bad financial shape (because i have dived all the way for this project), now with the pandemic, i dont know if i can launch something really stable and finale, be it for health or the world economy nosediving (i hope it wont affect me that much and i can do at least this).
And that's pretty much it.
All you can do is fly around and bounce off of things. I didn't implement any collision logic, so everything is indestructable, but you can chase and attempt to herd asteroids, or bounce off the sun! The physics of the ship mimic the real world: turning doesn't affect your velocity (no swooping.) But conservation of angular momentum was such a PITA that I made it so the ship automatically damps it. I also made a "magic" brake that just slows you down relative to the frame of the sun.
Godot is really tight. It has a few weird glitches here and there but overall it's a joy to work with. (As an aside, I was trying to make some meshes and things in Blender and O how I hate that UI. I have a total love/hate thing with Blender. One the one hand it's so good and powerful and has such a compelling life story, on the other hand it literally gives me a headache when I use it.)
Anyhow, FWIW I just pushed the "game" to srht: https://git.sr.ht/~sforman/SpaceGame so y'all can take a look.
You should be able to load it into Godot 3.2 and run it or edit it. It's a little messy, I apologize. It's only a week old and I haven't spent a lot of time on it, but I'm learning techniques and adding little things here and there.
There are soooo many possibilities... I didn't plan to make this, but I imagine I'll keep messing with it. Scratching an itch. (In a world that contains e.g. Kerbal Space Program and EVE Online do I really want to spend a lot of time on this?) One thing I want to try is connecting to a Prolog server via websocket and using it as the ship's computer.
BTW, the thought occurred to me the other day that, since Godot has HTML as an export target, it's a valid front-end authoring tool, especially if VR|AR takes off, eh?
[1] Space Kit from Kenney.nl https://kenney.nl/assets/space-kit
Out of the box with minimal configuration, my telemetry platform has:
- Support for many common telemetry protocols, for example: (NMEA 0183, Mavlink, CAN-bus, VE.Direct, Key-Length-value strings)
- Realtime data streaming, play/pause/replay, time scrubbing
- Dashboard editor and component library (charts, gauges, text displays, instrument panels, etc)
- Data syncing in realtime between servers and the cloud; dashboards can be shared and viewed anywhere
My background in this is from my work at the University of Rochester leading a manned electric boat racing team. A need we saw across teams at our competitions was the ability to integrate realtime data from many embedded devices into a single data stream, plot data live on dashboards during races, store data for later analysis, and easily share that data among team members. Building out the infrastructure to do this gave our team a great advantage as we were able to back up high-level decisions with quantitative data we received from our system.
For example, where other teams would guess based on sparse data the ideal propeller pitch for a desired event, we had exact data on the RPM/torque from our drivetrain and current draw on the motor, and were able to quantitatively compare our propeller selection in different events to optimize for speed, efficiency, etc.
The professional ecosystem in this area is huge:
- ROS is the dominant telemetry platform across hardware systems
- The Mavlink protocol is used for drone communication
- CAN-bus and other hardware standards are used in the vehicle industry
- Matlab is commonly used for data collection & analysis among researchers
Across all these systems there is a common problem for beginners: There is a huge amount of domain knowledge and setup required before you can effectively build complex systems. Across almost every amateur project that does hardware data collection, people are repeating the same steps: Set up a custom protocol for streaming from an MCU over serial, write a program to receive/store that data, use an external tool to load, process and chart the data, etc.
On some level, that experience is really valuable, and I'm building the platform not to force you into a certain method: Using one piece of the system does not require buying into every feature. For example, you could just use the server for data collection, and read data points directly from the server into your own UI. conversely, you could use the server/UI to point at a ROS instance and just use the UI as a UI layer for dashboards.
Overall, I'm really excited because I think that building a ready-to-use server and a powerful UI into a single package represents a real step forwards. There's a real need for this type of system that I've seen time and time again in the field from makers, researchers, and anyone else building hardware systems.
My 10 year journey:
Ever since college, I had been teaching. Teaching and helping others keeps me humble, develops my patience, and makes me a better developer. I am constantly forced to follow best practices so I don't teach the wrong things.
2010 - I started coding as a junior in college. I was objectively the worst coder having started so late so I convinced my best friend at the time to learn how to code while he was pursuing an econ degree. This way, I know somebody worse than me at coding. It helped boost my confidence.
2012 - After graduation, I got a job! Shortly after, my best friend got a job too despite having only an econ degree and no coding background. This inspired my ex-girlfriend at the time (who had a stats degree) to learn how to code. She got a job shortly after.
2014 - I started thinking... could anyone get a coding job without a degree? I reached out to a high school friend who was working as an uber driver. His college degree didn't work out for him, so I invited him to stay in my home while he learned to code. I eventually hired him onto my team and we worked together for awhile.
2016 - I wanted a definitive answer to the question "could anyone get a coding job without a degree?". My hypothesis was a yes and to verify that and I needed more students. I made a public post offering a free coding bootcamp with no interviews. First 12 students got to join for free.
2018 - Teaching those students turned out to be really difficult because they all came from all different backgrounds. I had to change my curriculum many times to not only train them to become good software engineers, but also prepare them for interviews. Eventually, all the original students (2 of whom I hired myself) got a job as a software engineer. I invited new students and started drafting up a formal curriculum.
2019 - Wrapped up a first draft of our formal curriculum. Started a free coding group at our local library: https://www.meetup.com/San-Jose-C0D3
I show up before work every day (M-F at 8am) to help students who are learning how to code.
2020 - Throughout my journey, I worked as a software engineer. Our curriculum has proven to be pretty effective and I'm currently in the process of hiring some students who started coding at our library into my engineering team. My goal this year is to launch our curriculum to the world for free as open source.
Due to the current pandemic, we have paused all in person meetup groups and we interact online. If you want to beta test our product, start here: https://c0d3.com/book
https://github.com/dosyago/22120
also a way to stream and record and replay a browser session remotely:
https://github.com/dosyago/RemoteView
apart from those two serialization projects, I'm also building a side project in stylegan to generate art, and a self reporting pandemic tracker, relevant to C19.
and a bunch of other open source stuff:
https://github.com/cris691/Portfolio
contributors welcome!
I have a Mac Mini with upgrades and a 4K monitor waiting.
Also, working on a boro water cooled virtualization/workstation dual EPYC that I've been piecing together before AMD made the press rounds. I'm supposed to have a dual CPU & VRM waterblock but the seller has been deflecting, dodging and dicking around for 4 months... they only mailed half of it.