1. 2

    I’m writing a toy AM synth. Quite fun and educational so far. I would eventually like to add an FM synth option as well, as I haven’t fully explored that concept yet. These have been bucket list items for quite a while.

    http://noop.rocks/gdr/viewtopic.php?f=5&t=4

    1. 3

      Hopefully, I will be laying the groundwork for a terribly simplistic Amiga intro. I’ve done plenty of stuff like this on other platforms, but committing to doing anything on Amiga has always eluded me. Worst case: it gets shuffled into the “2021 goals” category.

      1. 1

        Good luck with the intro!

        1. 1

          Thank you! I’ve just barely scratched the surface, and I can already see why the platform still gets so much love.

      1. 2

        The bottom line is that procedural generation is a ton of work up front, but immensely satisfying (to me, at least) when everything finally clicks and you get beautiful output. It’s also a pleasant bonus when the code hits several weird edge cases and surprises you with output you’d never have anticipated.

        And, of course, I always enjoy watching developers run through a process step by step, slowly dialing in their approach until they achieve success. Kudos to the dev.

        1. 1

          I can’t remember exactly how to trigger it, but I used to abuse the “remote punch” bug liberally on the C64 version. I do recall that it’s far easier to trigger when both the ninja and green dude are occupying the same space. Once you get in a single punch on both of them, you can keep punching and continue hitting both of them as they get pushed further and further away.

          1. 2

            It was great to have commentary from the art team, and also hear anecdotes about how things functioned at Skywalker Ranch. Despite the technical limitations, they managed to ship one of the finest adventure games I’ve ever played.

            Side note: If you liked Monkey Island (1 or 2) you should give Thimbleweed Park a try.

            1. 6

              I really like analog devices and hardware switches. The current state of play of digital technology is total garbage.

              1. 4

                I feel like there has been a general UX regression in the rush to make a 100% transition from analog to digital across the entirety of our living experience. I especially note the friction with simple devices such as kitchen and laundry appliances. Typically a simple 3-4-position selection dial and a start button are sufficient, but now people are expected to go through a laggy touchscreen UI and five button presses just to start a pot of coffee.

                And of course it has to have super-bright blue LEDs somewhere on it.

                1. 6

                  super-bright blue LEDs

                  You know what gets me? I can never read blue LED displays. Like a clock on a stove or something. I find I can read red ones at a distance reasonably well (with my eyeglasses on, of course). But blue ones with he same size at the same distance are so blurry to me I have to get right up next to them, glasses or no.

                  And we know in physics that blue light scatters more, and in physiology there’s known sensitivity differences between the colors in the human eye, so I doubt it is just me; this seems like it should be predictable. Could be the fault of my glasses scattering the light but I’m hardly the only person in the world with glasses so even if they didn’t predict it from principles it ought to have come up at some point in testing or buyer feedback.

                  Yet all the new models replace the readable red with blurry blue. Blue is a beautiful color but displays are meant to be read, not admired!

                  1. 4

                    Auuuuuuuuugggghhhhh … do people not do any serious usability testing of these devices? I have an otherwise lovely Bluetooth speaker in my bedroom that sports duct tape over the high intensity blue LED. Otherwise it lights up the entire room as soon as the main lights are out.

                    And while we’re on the topic of usability - thank for the almost entirely invisible TV controls with no tactile cues, Samsung.

                    1. 3

                      I have found that consumer electronics aren’t safe to buy anymore. Even ignoring the ever-decreasing quality, there’s been an invasion of “smart” devices, of dubious intelligence. I have e.g. had the pleasure of trying to accomplish a simple task (switching inputs) using the remote control of someone’s smart tv recently, and it left me with nightmares of “dumb” options vanishing from the market.

                  2. 2

                    Too many negotiations, too much fucking flakey copy protection crap taking up wall time, cpu time, and implementation dollars.

                  1. 15

                    Interesting project, but this marketing BS is not a good link for Lobsters. Here are the very basic questions I had about Nanos:

                    • Does it descend from some pre-existing system?
                    • What language is it implemented in?
                    • How is it licensed?
                    • Who supports its development, and what is their business model?

                    To answer all but the last of these, I had to click around and find the github repo. The FAQ on this marketing site is pretty vacuous. “Syscalls: N/A” lol.

                    Anyway, I think I’ll stick with https://mirage.io/ for my unikernel needs. But thanks for sharing!

                    1. 5

                      Anyway, I think I’ll stick with https://mirage.io/ for my unikernel needs.

                      I only just looked into this stuff but… all of MirageOS’s peers are dead. So I think I welcome anyone new in the space. We need progress and competition!!!

                      1. 3

                        Good point, but it perhaps says something about the unikernel concept itself and how it’s played out in practice. Overall, I agree, and I’m happy to see Other People’s Money being spent on a technical subject I personally find interesting. I sincerely wish the nanos folks all kinds of success.

                        At the same time, I must admit to having some doubts about the wisdom of implementing a unikernel with a completely fresh code base in a famously unsafe language, but hey, I guess we’ll see how it plays out.

                        1. 2

                          The money point is important to point out. It’s not something you can just whip together in a weekend and not something I could see happening without lots of $$ to employ full time engineers on. Even then the difference between hello world and production usability is a huge gulf to cross - most teams unfortunately die before they can cross it. That in my most humble opinion is the biggest problem in the ecosystem. Government grants can only take you so far.

                          I hear your complaint against c. We’ve discussed doing other complementary projects in rust but the pkg/dep system is a major turn off and none of our engineers speak rust either other than hello world projects. Likewise $$ again is a prime concern for working in that ecosystem. When you have tiny little saas companies that raise tens of millions and employ tens to hundreds of software engineers you have to ask what is the true cost of a new language or a new operating system?

                          1. 2

                            All very cogent points, and be it far from me to armchair-quarterback anyone’s business strategy. Application support is probably the first priority for a real-world unikernel, and that drags in legacy APIs and other ecosystem factors that we can’t really control. Latent security problems only become critical when you actually have some customers.

                            I’ve had a corner of an eye on this space for a little while, but I wouldn’t claim any expertise. To me, it seems like Mirage has carved out a bit of a niche and, like many open source projects, is sort of puttering along just fine with little in the way of sponsorship. But its adoption is of course limited to the (relatively tiny) Ocaml ecosystem. Then there’s the rump kernel approach, which largely piggybacks on NetBSD’s flexibility and mature-ish code base. Looks like there’s some consultancies promoting that. Probably works great for some applications. Doesn’t appear to need VC, at a glance.

                            The only unikernel I have had any real first-hand experience with is HalVM. I can assure our readers that no realistic amount of government grants or eager first customers could have saved it from drowning in its own space leaks. Haskell itself is largely subsidized by the academic tenure system, and is thus well insulated from its own practical failings, but that’s another story entirely.

                            1. 2

                              Agree with most of this, however, Antti spent something like well over a decade fleshing out rump - and that was on top of netbsd which was forked 27 years ago so I wouldn’t agree that the ecosystem doesn’t need financial resources. The EU is trying to pump some money into the ecosystem thankfully. There indeed are a few consultancies but they tend to come and go (again lack of resources) - I keep a running list.

                          2. 1

                            in a famously unsafe language

                            Oof. I only just noticed it’s in C. Okay, I’ll root for it, but hopefully they’re making up for that handicap.

                        2. 5

                          This site is a WIP - literally went up yesterday.

                          Also, this is not intended to be a marketing site - it’s a community site. I was curious if the lobsters crowd would cast it as such but since I have seen plenty of other sites like ziglang with ‘donate now’ buttons figured one link on a community site wouldn’t be ‘marketing’.

                          As for the questions:

                          1. No. From the ground up it’s written in scratch - github.com/nanovms/nanos .
                          2. C (mostly)
                          3. Apache 2 - https://github.com/nanovms/nanos/blob/master/LICENSE
                          4. NanoVMs - (the real marketing site ;)
                          1. 5

                            If it’s a WIP, why did you post it here?

                            A donate button doesn’t make a marketing site, but there’s almost no substantial content — barely a synopsis — and it is indeed mostly trying to convince you to use it. That’s marketing.

                            1. 6

                              Are WIPs not allowed to be posted to Lobsters? Zig is a WIP, it’s at 0.6.0. Can we not link to a Zig release page?

                              1. 5

                                No, of course it’s fine; the point is someone said “weird that this page is missing these basic things” and the author replied “the site is a WIP, it only went up yesterday” to explain why these basic things are missing. Both are talking about the site, not the software itself, because they’re talking about the submission, not the product, which is a distinction so many people in this thread can seemingly not make.

                                Lobsters is about discussing submissions, right? If you feel the need to defend your submission by saying “it’s a WIP, it only went up yesterday” when someone points out key information is missing, I don’t think you should have posted it yet. What’s the rush?

                              2. 3

                                If it is not appropriate I apologize, although, I feel lobste.rs should post a guidelines document as I see a lot of links posted that have commercial links back and I can’t think of a single OSS project that is commercially supported that doesn’t have a link back.

                                Just now I found the following on lobste.rs - all that had more than one link going to a commercial post:

                                https://blog.cloudflare.com/unimog-cloudflares-edge-load-balancer/ https://android-developers.googleblog.com/2020/09/android11-final-release.html https://blog.ipfs.io/2020-09-08-nix-ipfs-milestone-1/

                                1. 7

                                  Like I said, the donate button isn’t what matters, and the examples you’ve given serve my point: they are chock full of technical content and detail, which is what we want to see here. This submission has almost no substance.

                                  1. 4

                                    A new operating system and a new file system aren’t technical enough?

                                    This “submission” is backed up by multiple repositories of open source code:

                                    https://github.com/nanovms/nanos

                                    Where is this aggression coming from?

                                    1. 15

                                      There’s sincerely no aggression; you’re asking about what’s appropriate and I’m doing my best to help you understand why (from my point of view) I feel this isn’t an appropriate submission. I think my opinion is at least somewhat representative of community norms based on votes. I’m not attacking you, I’m sharing my context. You don’t have to agree with my assessment.

                                      The page is light on detail and mostly serves to advertise. That’s what it comes down to. I don’t think this submission adds anything. The direct repo link would always be better, or a technical detail post.

                                      And yes, you posted the repo a little while ago, and that’s okay. If there’s a new release, link to the patch notes instead. Reposting the same link isn’t forbidden either, especially if there’s been big changes.

                                      1. -4

                                        I think a lot of people would find these comments aggressive - maybe you can disclose your real name and who you work for. :) (That’s ok, you don’t have to.)

                                        You are most definitely correct that it does to advertise the community aspect of the operating system. I’m sorry if you are looking for a corporate only POV. I won’t advertise it here but you can easily find it.

                                        I’m glad you don’t find patch notes offensive - I’d find any patch notes offensive that are offensive. Nanos.org is a brand new site so sorry no new changes.

                                        1. 14

                                          I actually found your comments to be on the aggressive side, while others tried to explain their views on why your post is flagged. And the length of their posts implies it’s a sincere efforts.

                                          1. 10

                                            maybe you can disclose your real name and who you work for.

                                            This is in bad faith. Additionally, my real name and employer are trivial to locate. I really think you should reevaluate your angle here.

                                            I’m sorry if you are looking for a corporate only POV.

                                            I have to believe you’re being intentionally obtuse in light of my suggesting “the direct repo link” or “a technical detail post”. I’ve really tried only to be kind in my comments here and represent my views to get to a shared understanding with you, but you seem to consistently engage in hostility and points raised while further stirring things up.

                                        2. 4

                                          Where is this aggression coming from?

                                          There seems to be a misunderstanding here. I think absolutely nobody is objecting to submitting Nanos, that would be ridiculous. People are objecting (although I disagree) to submitting the URL https://nanos.org/, instead of (more relevant) URL https://github.com/nanovms/nanos.

                                          I hope this makes things clear.

                                          1. 1

                                            The nanos.org website, is strictly for providing a place for the community to place a voice outside of the company. One of the reasons of having a community site was to move a lot of knowledge that was in engineers heads to the community in the hopes that it would not be lost.

                                            The very fact that it is a .org and not a .com, should be painfully clear but in 2020 I realize that is just not something that works with everyone.

                                            Just as kernel.org is an .org, yet retains logos from Fastly, Packet, Redhat, Google and many others, nanos.org is an open source site with source code found elsewhere.

                                            Is this such a problem?

                                            1. 5

                                              Submitting a site structured like kernel.org would indeed meet some annoyance, because there is nothing to read on this page, and not clear which of the links you considered most worth following. You could pick one previously unposted of the many pages you have mentioned with technical substance and say in the comments that «We are currently working on building a community site on nanos.org and making the linked material available (or updating it) was a part of that work». That would look in a different way.

                                              Note that a page that looks like a pure advertisement for a community is still pure advertisement, even if of a slightly different kind compared to commercial advertisement.

                                              I guess you could imagine the following imaginary (or is it?) use case for Lobste.rs: automatically download the linked articles and separately comments automatically and read them offline. If changing what you link to and mentioning the original link in the first comment would increase the value for such a use case and not clearly decrease the value for the more typical use, it is likely that such a replacement would also improve the reception here.

                                              1. 0

                                                Submitting a site structured like kernel.org would indeed meet some annoyance

                                                Are you kidding me?

                                                I guess I was wrong in posting a free/open source community based website to lobste.rs - I’ll refrain from that in the future. So much hostility.

                                                1. 3

                                                  Strictly speaking, you were submitting a page, submissions are not really read as sites — there are surely many good pages on your site to submit.

                                                  1. 1

                                                    I still don’t understand the frustration here. Is the main page not the most direct way to announce a public free open source tool that did not have it before?

                                                    If you had never heard of rust before aside from a few coworkers chatting about it and rust-lang.org didn’t exist but then it pops out of existence you wouldn’t find it appropriate to post?

                                                    1. 5

                                                      rust-lang.org goes in somewhat more details than the current state of nanos.org, and I guess a more detailed page about what choices Rust makes would be a better choice than the main page.

                                                      Many of us want to click the link and find a page containing a text about something technical that directly convinces us to care. Currently nanos.org tells me «Nanos is a unikernel» and nothing else (sure, almost every unikernel will mention that avoiding context switches will improve performance in read()-bottlenecked tests), then there are some links. I can easily understand people preferring to get a submission where the main link goes to a substantial text, not to a place where you need to find out which link to click to get the text. (I personally did not flag this submission, though)

                                                      1. 2

                                                        I 100% agree there should be more detailed documentation and there most definitely will be, it’s a work in progress.

                                                        I suppose all the frustration can be summed up with “come back when there is X bytes of technical documentation and link to that rather than the front page”. Noted.

                                          2. 3

                                            Literally nothing about the link you used for the submission is technical at all. It’s a marketing splash page.

                                            1. 1

                                              Literally? Nothing?

                                              https://nanos.org/thebook isn’t technical at all? After one day? With links to pull requests of code? and binary serialization formats for a non extX filesystem?

                                              Please.

                                              1. 5

                                                Then why didn’t you link to the book? Remember, I said the link you used for the submission.

                                                1. 2

                                                  It’s a link from the main site…

                                  2. 1

                                    This community has become so fucking toxic! It’s really sad that I now no longer enjoy reading the comments. I use to come here for the fun technical discussions. But once again the internet has ruined another great website. jcs should have kept everything invite only and small. No wonder he gave up and walked away…

                                    1. 2

                                      I think what you’re witnessing is the site adjusting to a course correction toward its original purpose. A few people were making a push toward getting more ‘culture’ related content on the front page, and that’s not what this site has ever been about. Some folks have been pushing back.

                                      Fortunately, in the last few months I’ve seen more interesting material hitting the front page than in recent years, and the comments are still well worth exploring (in those threads). Anything resembling “toxicity” comes in ‘culture’ tagged articles.

                                  1. 2

                                    Rereading Dune (it has been quite a while for me). Replaying Monkey Island 1. Hopefully pushing some pixels if the opportunity arises.

                                    1. 8

                                      I’m soldering together a keyboard! I plan to write about my experience with it once I’m done.

                                      1. 3

                                        As many mechanical keyboards as I’ve collected over the years, this should be a bucket list item for me.

                                        1. 3

                                          Looking forward to read related post!

                                          1. 2

                                            You’ll have to wait a little longer for it while I wait for more parts to show up (it went that badly lol). I’m gonna pull out a Twilio number forwarding thing from my backlog in the meantime.

                                          2. 2

                                            Awesome! Can’t wait to read about it! What sort are you building?

                                            1. 1

                                              Split keyboards. There’s not much to write about because the build was an unmitigated failure :( I ordered a partial kit for the Gergoplex (all the tricky/surface mount soldering done for me beforehand) and I will be putting switches into it when it comes in.

                                              Turns out surface mount soldering by hand without much experience is hard lol. I’ll have more words in my post. Gonna also use that keyboard for steno.

                                              1. 2

                                                Ah that’s a shame :/ Hopefully the Gergoplex build goes better!

                                                1. 1

                                                  Yep, just waiting for the board to come in now

                                                2. 2

                                                  I spent a summer interning as an EE, and yes - surface mount soldering by hand is quite hard. Took about 10-15 hours practice before I was working with any speed.

                                            1. 2

                                              I’m really hoping the whole Thimbleweed Park experience was enough to encourage him to keep crafting more SCUMM-like games. I had a few friends with MI1, and we spent a small chunk of our sophomore high school year running through the game. Great memories!

                                              1. 2

                                                Demoscene stuff is on hold for a while (again), so I’m back to piddling around with game programming for a while. I’m continuing to work on a small project. The player has to scour a randomly generated island for the resources needed to take out the obligatory evil boss, while avoiding mobs and other nasty things. Simple stuff, because I just don’t have the energy to take on larger projects these days.

                                                1. 1

                                                  I’m rather amazed that the whole thing was written in assembly language - not sure if that was common with console games of that era?

                                                  1. 1

                                                    Yes, that was common for SNES and NES-era games. Optimizing C compilers for 6502 targets have existed for a while, but have never been particularly performant.

                                                  1. 4

                                                    I always perk up when old platforms are discussed (C64, Amiga, etc). That, or anything ASM related. I’m happy to see a slow but steady influx of those submissions.

                                                    I’m also thrilled to see that despite the pervasive push to needlessly politicize every facet of every other web experience, Lobsters has stuck to its mission and provided an excellent platform for all of us to discuss the wide world of nerdly pursuits. The signal to noise ratio is what keeps me here.

                                                    And may it last forever, or thereabouts :)

                                                    1. 1

                                                      I’ve done quite a bit of game development during the late 80s, early 90s, and dipped my toes thoroughly in the demoscene waters, but without looking at a disassembly this truly strikes me as black magic. I couldn’t conceive of so many effects in such a tight limit.

                                                      I was watching the stream and after this demo posted, my expression mirrored that of Sir Garbagetruck’s. Pure incredulity. Elevated was probably the last demo that blew me away from a purely technical perspective.

                                                      1. 1

                                                        Well, there’s no shame in that. I remember printing the source of Puls by Řrřola (http://www.pouet.net/prod.php?which=53816) and looking at it for a few days without figuring out too much. (Not saying it’s impossible though, it was just harder than I thought and moved on to other things).

                                                      1. 4

                                                        Thank you for bringing this up. I support this suggestion, and would like to see it permanently excised.

                                                        I’m going to make a feeble attempt at wording this carefully, as I don’t inherently believe all “culture” related subjects should be banished from the site, but I also feel that anything worthy of presentation here can also fall under the umbrella of other established tags.

                                                        The culture tag was a catch-all for stories that otherwise don’t categorically fit here. Unfortunately, they eventually trended toward emotionally-charged stories such as human interest, or outrage pieces. Ultimately I feel like the material presented, and the discussions therein were generally low quality, and best left for other places on the net.

                                                        1. 10

                                                          Until this was posted, I hadn’t realized how much I miss the satisfying “chunk!” of inserting 3.5" disks.

                                                          1. 12

                                                            I miss debugging programs by ear. I used to be able to recognize a bug had occurred when the sounds of accessing a floppy drive or hard drive were not what I expected. Between quieter components and multitasking that’s no longer the case.

                                                            1. 6

                                                              Heh. I’ve mostly replaced this with visual cues. I have a “system monitor” that is always visible on one of my monitors. Gives my CPU breakdown, memory usage and graphs for disk and network access. Very useful for staying “in tune” with the machine in front of you. I can tell a lot by just a quick glance when running a program:

                                                              1. How many cores it’s using.
                                                              2. Whether it’s getting bogged down in syscalls.
                                                              3. Network usage.
                                                              4. Whether it’s reading from disk.
                                                              5. Is memory spiking?

                                                              After a quick glance, I end up with a rough ballpark of where to go to debug further problems.

                                                              (Some of my co-workers think I’m nuts for preferring to work locally instead of remotely, but there’s something to be said about actually using the hardware that’s sitting next to you!)

                                                          1. 9

                                                            A long time ago I recorded keypresses from my beloved Model M and submitted them for a web-based Model M simulator over at Geekhack/Deskthority. Since then those sound effects have gotten around quite a bit :)

                                                            It’s cool to see them pop up in various projects over the years.

                                                            1. 3

                                                              So this thing is just playing back recorded sounds?

                                                              1. 1

                                                                Correct.

                                                                1. 1

                                                                  Not quite simulated then.

                                                              2. 2

                                                                Thanks for the fantastic sounds, Sirocco. Let me know how I can better give you credit for them.

                                                                1. 2

                                                                  Thank you, but that’s not really necessary. Or perhaps I could just use this post to say I consider them public domain?

                                                              1. 2

                                                                It’s not the noise we’re interested in, it’s the tactile feed-back. The noise is just a cool novelty at first, and something that you no longer pay attention to, after a while.

                                                                1. 2

                                                                  I want to agree with you on this – mostly. The long-throw keys and tactile feedback are what I crave out of a keyboard, but the noise from the springs buckling is also incredibly pleasant, even if my brain tends to shuffle it to the background after a while. The sound is part of the whole experience.

                                                                1. 0

                                                                  Why is this here? Was there something specific that Lobsters folk should be paying attention to?

                                                                  1. 2

                                                                    Could you elaborate? Are you objecting, or just curious?

                                                                    1. 3

                                                                      I’m just wondering why Wikipedia links are being posted to Lobsters? Yes, there’s a whole lot of interesting stuff on Wikipedia, but what’s the point of linking to (arbitrary) entries? What value does this bring to the Lobster community?

                                                                      So I’m objecting because I don’t see the point, but I also admit to have possibly missed the point, hence my query.

                                                                      1. 3

                                                                        I don’t think Nagle’s Algorithm is terribly arbitrary. It’s a networking algorithm, it’s pretty interesting, and wikipedia has a good explanation of it. If someone had a blog post which had all of the same explanation of Nagle’s Algorithm, it probably wouldn’t be questioned. I think wikipedia shouldn’t be treated as special because it’s wikipedia–if the information is useful, or interesting, and tech-related, I think lobsters is a good place for it.

                                                                        Wikipedia is not terribly timely, but I don’t think it’s important to only link to things which are timely. Lots of interesting information is still interesting a year later.

                                                                        There is also a long history of posting wikipedia articles on lobsters, and they are often well received.

                                                                        https://lobste.rs/s/igivzn/garden_path_sentence
                                                                        https://lobste.rs/s/zcedw1/sexy_prime_-_wikipedia
                                                                        https://lobste.rs/s/6cdghq/pgp_word_list

                                                                        1. 1

                                                                          I like that this was posted. There are still a lot of algos that haven’t crossed my path. In general, I’d rather see a page with a “for dummies” explanation of the algo, as Wikipedia entries tend to be rather dry and clinical. Then I can decide if I want to go all-in, if that makes any sense.

                                                                  1. 2

                                                                    Reminds me of when I had to build a mock 4-floor elevator in school, using old printer parts and a PLC, programmed using Ladder. Python would have been so much nicer…

                                                                    1. 2

                                                                      I hate programming in ladder, but it does make online debugging a breeze.

                                                                      1. 2

                                                                        Yeah, that’s true, being able to just see what’s going on in all parts of the program at all times was rather useful.