Hacker Newsnew | past | comments | ask | show | jobs | submit | unwind's commentslogin

Meta: This is a very messy title, it should just be "The minichord: a pocket-sized musical instrument" or something like that. We have the github info in the auto-generated blurb right after the title, after all. Thanks.

Reasonably, that language is MicroPython [1] which is the special pared-down version of Python for memory-constrained embedded targets.

[1]: https://micropython.org/


I couldn't quickly find a comparison table or similar, to see what parts of Python are not supported by MicroPython. So I asked an LLM and it listed quite a substantial amount of modules of the standard library, that are a shame not to have. No logging module? No multiprocessing? No json, no xml? And the list goes on, including many very useful modules. One can probably somehow get by, installing third party libraries, but then what is the point of being MicroPython, if you need to install tons of libraries to do basic things like reading a JSON file? And as I am currently working on a tkinter application, tkinter being on the list also makes me think: "What a pity, cannot port that to MicroPython."

This is just my first superficial look at it and it is also based on LLM info, which doesn't have to be correct, but if it is correct, then it feels a little disappointing.

Perhaps for more serious app development, it would be good to have real Python and interface with MicroPython for the hardware controlling stuff.


Always double-check an LLM, particularly when it's just a quick(er) search away:

https://docs.micropython.org/en/latest/genrst/index.html

Specifically: JSON is built-in, logging is available. There's no multiprocessing (it is designed for a micro, after-all - and note that thread is available on some ports), no built-in XML lib.

Be sure to check micropython-lib, the MicroPython Awesome List and mim for others.

https://github.com/micropython/micropython-lib

https://awesome-micropython.com/

https://checkmim.com/


MicroPython is primarily for embedddd devices with on the order of 1 MB of RAM and FLASH. And applications which makes sense with such constraints. If you have hundreds of MB of RAM, better to just use CPython.

Just a few months back I worked in embedded development on a project and there was a physical dongle to unlock the compiler, which was surprising during on-boarding as I've spent years doing commercial embedded work relying on GCC. :)

“The historical significance of JUMPSEAT cannot be understated,” said Dr. James Outzen, NRO director of the Center for the Study of National Reconnaissance.

I'm no native speaker but that is backwards, right? Shouldn't it be overstated if it was a success?


I think so, "whatever you boast it's not overstating" -> cannot be overstated.

Native here: you’re correct it’s a weird sentence and turn of phrase in English.

That said, can/cannot is a flexible word in English and we could take it to mean “Anyone discussing the significance of JUMPSEAT [accurately] [should never] understate it.”

But I think he meant overstate in this case. Or maybe he hated JUMPSEAT, thought it sucked and put that right out there in the press release.


Me too, from Firefox in Linux and no (!) blockers. Weird. Maybe geo-fenced for not being in the US, sometimes companies do that which is ... weird.

Uh that piece of horror was not in the post. Phew.

Brown in German is actually, wait for it, "braun".

Cool!

I love seeing new games for "retro" machines, it's awesome that people keep pouring time and love into them after all these years.

I'm not super familiar with 8-bit Atari machines, and found the designation "classic unmodified 8-bit ATARI XL/XE" a bit imprecise. Tried looking up specs on Wikipedia [1] but was unsure what to settle on. Perhaps the original 1200XL would match? Or the 800XL which seems to improve on the 1200XL even though the naming suggests the opposite ... Or the 65XE, or both then I guess since the latter is compatible with the 800XL, but in an updated case?

[1]: https://en.wikipedia.org/wiki/Atari_8-bit_computers#1200XL


There are a great many modern modifications available for the 8-bit Ataris, many of them from Poland where the machines saw good sales quite late compared to the US.

Using modern electronics (FPGAs etc.), processors, and high-density memories, you can imagine the processing, graphics, and I/O improvements that can be made for relatively low cost.

Many hobbyist machines at this point are highly modified, with much new software taking advantage of the new features, so specifying "classic unmodified" pretty much means a system into which you could have slapped a ROM cartridge purchased at your local computer store back in the day. XL/XE sounds like it rules out the original 800 and 400 models.


> I love seeing new games for "retro" machines, it's awesome that people keep pouring time and love into them after all these years.

Same here, which is why I have more games to play than I care on my lifetime, without bothering with whatever subscription services, or games measured in GB/TB.


The 1200XL was super rare. Normally they mean the 800XL or 65XE which were pretty much the same except for the case design.


XL/XE means any xxxxXL and xxxXE.


Very cool, nice effort and a good write-up!

If my math is right it seems the cost in material for the printed part is around $5 which seems ridiculously cheap for a custom-designed and adapted solution like this. Nice!

I wish the author had spent a few words extra to motivate why it needs to be in PETG filament for "heat resistance", is the regular PLA limit of ~55 degrees Celsius not okay for a desktop accessory? I guess if it's in direct sunlight that might be exceeded, or perhaps if the laptop runs very hot?


To be fair, that's something you learn as soon as you start 3d printing. Anything that experiences repeated stress and have any chance of getting over room temperature during summer should not be printed in PLA. And near a computer heating up, it sure looks like it's going to be higher than room temperature. Also pictures in a train exposed to sunlight via glasses are another reason for concern.

Compared to PLA, PETG has higher temperature resistance (by about 20°C), isn't quite as susceptible to stress, doesn't cost more and isn't any harder to print on modern printers.

Some people in the 3d printing community have totally ditched PLA and use PETG as a baseline because of that.


I use ABS as a baseline, it holds up well, is easier to sand than most other materials, and is soluble in acetone which gives you some nice methods for smoothing layer lines as well as adhering parts together. It requires a heated chamber though.


ABS also emits potentially toxic, and certainly unpleasant, fumes, so you need a good carbon filter and ventilation system!


> is the regular PLA limit of ~55 degrees Celsius not okay for a desktop accessory?

Not the author, but PLA has a glass transition temperature of around 60 degrees, which in layman's terms is when it starts to melt. However, depending on the quality of the printing process, layers start separating/the print is pliable significantly lower, at around 35-40 degrees. This means that in countries where you get 30+ degree summers, PLA is not really suitable for anything which experiences any kind of stress. I would hazard a guess that the standing laptop can cause quite a bit of stress when the train starts/stops.


It should be mentioned that as far as I can tell pretty much no one is selling pure PLA filament. They all have additives, so who knows what the actual glass transition temperature is for any random given filament. This has been true for a while too. Pure PLA has some properly awful properties, among which is it having pretty much no elastic deformation. Any amount of force will introduce microscopic cracks. The various additives reduce these kinds of issues and are therefore not really optional.


I used ASA for something I intended to keep in my garage, I live in Florida so summer gets hot. ASA is way more heat resistant than both. My water boiler uses the heat within the garage as part of how it warms water so my garage doesnt get too hot but it can still feel pretty bad in there.


Glass transition temperatures are a little bit misleading, but from personal experience even leaving a PLA print in direct sunlight under even a little tension will cause it to warp in as little as 30 minutes if you aren't careful.


It becomes pretty weak even on a hot day in the sun and in a hot car can melt (not into a puddle but into al dente pasta).


In addition to heat resistance, I find that PETG handles stress and resists stretching out way more than PLA


That sounded fascinating as a rather large difference in world view stemming only from using different languages.

It turns out that there are various models for the number of continents, and that is (phew) known in Spanish, too. See the Wikipedia page [1] (link to Spanish version) for instance. This is for European Spanish though, but I couldn't find a version of the page in es-AR.

[1]: https://es.wikipedia.org/wiki/Continente#Modelos_continental...


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

Search: