Also, C418 put a creeper face in Minecraft's soundtrack.
108 karma · joined July 20, 2022
Also, C418 put a creeper face in Minecraft's soundtrack.
Although I appreciate the effort, I see a couple of issues with this implementation:
* The demo doesn't seem to work properly, the first thing I tried to type was "hello world", but it didn't recognize "hello" and I got "43556" instead.
* The word list is generated generated C code, which makes it hard to use other dictionaries (languages) or to add words during use (you can't add all place and people names to the list, but people are going to want to reference a handful of them many times). Loading from and appending to a plain text word list would make more sense, and maybe additionally use a custom binary format for the trie structure for fast loading into memory once a word list is imported on first use (hardware that would benefit from T9 might not be fast enough for conversion to be "instant")
* Non-latin script support would be nice. Although I have no knowledge whether Greek or Cyrillic languages used a T9 mechanism, it would be a minor change to define. Korean 12-key typing is also very cool, but I don't know whether that counts as T9.
I had a terrible experience, nothing worked correctly, basic, fundamental apps such as phone, contact, alarms, had lag spikes of over a second for any action and randomly crashed, it had no CJK support (kind of a big deal for me, and like 20% of the world)...
Some apps worked remarkably well, but having Youtube work better than messages is kind of pointless given the sVGA screen size. And the app ecosystem was basically dead. I tried developing a bit for it (apps are a simple html+css+js package), but at the time publishing to their app store required integration of their advertising solution, which absolutely sucked (in 6 month of use, I was never served any other ad than "hot MILFs in my area"), which meant that neither commercial nor OSS apps would target the platfom. IIRC side-loading sort-of worked depending on phones, which means it doesn't work for the average user.
Oh and sometimes the Kai Store app would send advertisement through push notifications.
I loved KaiOS on paper, but using it was a chore. A 2010-era "dumb" phone could do most of what a KaiOS phone can, but better, except for connecting to 3g/4g networks, and older networks are deprecated in many regions, which means they're not an option anymore.
Maybe they got better over time, but what a huge disappointment that was.
I guess a hurdle smartphones didn't have as they were breaking into a new market is compatibility; outside of the tech world, virtually all of corporate and personal environment is dependent on Windows and Windows-only software. Steam has shown it can work with SteamOS and Proton, making gaming on Linux a reality for a wide audience. What's missing is a major OEM to build a high-spec laptop with a custom Linux build to optimize performance and battery life, with a decent Windows compatibility layer and that would provide software companies an incentive to sell native Linux versions and support. Is Samsung really going to keep their laptop line depend on Windows, and leave it on the side-line as they will never be able to really optimize battery life and performance and compare to the MacBooks?
* I don't trust the product's claims. Sure, privacy and user-centered results sound cool, but literally every company on the internet claims to cater to the user and value their privacy. Kagi can apparently afford to be more specific than usual, but how binding is that? I don't know, I'm not a lawyer and definitely not versed in US/California law, and given all the obviously exaggerated claims in this domain by all kind of actors, I can't give it much credit. I guess Kagi has to pay for the whole industry's decades of malpractices in this regard and that sucks, but I guess you could do better if you opened more about your
* I don't trust the product's ability to stay around. Startups come and go, and I'm not subscribing to a paid service and switching workflow without a reasonably solid belief that I won't have to do it again in a near future. Your new pricing policy actually helps quit a bit in this regard, the other bit requires you to actually stand the test of time, so just keep on doing your best I guess.
* Pricing has is shown excluding taxes. I'm not going to figure out the US tax system just to know how much I actually to shell out, and I'm not paying if I don't know how much. In Europe, VAT is around 20%, so it's a pretty significant figure, that would be 60 bucks a year for the Ultimate plan. I don't have the slightest idea if that's the order of magnitude expected in California. Have your lawyer or accountant figure it out, because I sure as hell am not. Allowing me to pay in euros would also be a quite large hurdle removed, for similar reasons: exchange rates fluctuate, banking operation costs fluctuate, and even if I can work it out more easily than US taxes, I'm not going to do because this should be your job, and whatever figure I work out will be obsolete by the next time I'm billed.
Interstate construction don't have such limits are typically half a meter or more, not counting foundation earthworks, which can easily double that figure. In cities where telecom networks are 60cm deep and gas and electric networks 80cm deep, you just don't have the luxury of designing a meter-thick pavement that will have a decent IRI for decades to come.
Plus, the build process is well documented and works out of the box (at least on Ubuntu in my experience) and the community is nice and welcoming.
Sure, you're free to use DDG and find a workflow, but people are less likely to remember it, especially as they overwhelmingly use Google.
Curved tracks do mean limits on top speed, as the centrifugal force needs to be kept below what would be uncomfortable for passengers. It also can cause some issues for building stations, as curved stations require a wider gap between the train and the platform. But neither is a blocking issue, all train tracks in the world do have curve, and curved stations aren't unusual in public transport systems.
The grandparent probably means disk, not ring-shaped when mentioning circles anyway. Pick any 2 point at random into a 33km² circle, the average distance will be 4km, and worst case scenario 6km. Do the same thing in a 33km², 200m-wide "line", the average distance will be 85km, with a worst case of 170km. A circular city doesn't need nearly as much raw speed for it's public transport to be more efficient than transport in a nonsensical linear city could ever be, even if you throw in ridiculously fast trains and sprinkle magical AI thinking.
It's not a coincidence that all major cities are roughly circular even though they are built around roughly linear features (navigable rivers and/or coast line). It's just what naturally works.
Plus, the support structure is free in this case, it's definitely cheaper to lay solar panels on those dishes than tearing them down just to lay panels on the floor. Also, having solar panels laying flat on ground level sounds like skimming on infrastructure to save money short term but having to pay higher maintenance long term: you have to keep the panels relatively clean for them to work, having them slanted and elevated a bit means that less dirt get on top of them and rain washes most of it regularly.
I don't believe QOI will ever have any sort of real-world practical use, but that's quite OK and I love it for it has made me and plenty of others look into binary file formats and compression and demystify it, and look further into it. I wrote a fully functional streaming codec for QOI, and it has taught me many things, and started me on other projects, either working with more complex file formats or thinking about how to improve upon QOI. I would probably never have gotten to this point if I tried the same thing starting with any other format, as they are at least an order of magnitude more complex, even for the simple ones.
Maybe Ladybird is not usable right away, so what? It's getting impressively close to this point with barely 5 years of development, from scratch (and it goes much deeper than HTML, CSS and JS engine, they also re-implemented the whole networking stack, image/audio/video codecs, font...) and by a small team of mostly volunteers, but more importantly, it's a positive project not only for the developers, but also for their audience and for greater scale web standardization.
I hardly imagine a project such as the one you're describing getting as much traction as Ladybird / SerenityOS (in fact, there are many such of these, but I don't see nearly as much talk and interest for their development), the whole project isn't about the end product, it's explicitly about the process to get there.
See https://en.wikipedia.org/wiki/Spool_knitting for pictures
I (and quite a few people) still play NES-era games, and not just because of nostalgic value. A lot of them are still a lot of fun. I have tried some Atari games, and with hindsight and the internet, I can target the best ones, or even recent homebrews that were made with current knowledge about gameplay mechanics, but at best they can get a few minutes of my attention mainly due to curiosity. Gameplay is severely limited by the single-button controller and processing power, very tight memory constraints mean very limited content (at best a handful of different screens played in a loop), and graphics are horrible. My brain can "fill in the blank" with NES-generation or later pixel art, but not with Atari 2600-style big blobs of color.
I have yet to see a single non-bullshit feature from any "smart" appliance, honestly.
Honestly, I use spaces because virtually all tooling and coding conventions that exist prefer spaces over tabs, but I don't understand how it came that spaces won over tabs in the programming world. So much energy wasted on counting spaces in text documents, it's absurd.
Although most coding guidelines seem to have converged towards spaces over tabs (see [1], [2],[3], your source, and many more), it also causes accessibility issues, especially for visually impaired people.
Some people require larger fonts, making space-indented lines go offscreen quicker. Some people require braille displays, which have a limited line length. A tab takes a single character on these, vs multiple (usually 4) for space-indented code. Some people require bigger indents to be able to process them better.
Not even considering disabilities, some people prefer 2 spaces, some 4, and some whatever pleases them. Working with tabs allows everyone to work on the same codebase with their own preference. By definition this is a subjective matter, and trying to enforce a preference across a whole codebase or programming language is needlessly opinionated.
Plus, the 2 first example use case in the article can't be solved either with spaces or standard tab stops.
---
[1] https://peps.python.org/pep-0008/#tabs-or-spaces
> Spaces are the preferred indentation method
[2] https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals...
> Use four spaces for indentation. Don't use tabs
[3] https://www.oracle.com/technetwork/java/codeconventions-1500...
> Four spaces should be used as the unit of indentation. The exact construction of the indentation > (spaces vs. tabs) is unspecified. Tabs must be set exactly every 8 spaces (not 4).
While leaving tabs vs. spaces "unspecified", specifying stabstops of 8 spaces actively discourages tabs
"If they said something else wouldn't you feel different?"
A key insight is that the poem doesn't contain an abortion-related proclamation that you don't agree with.
But bus routes are a harder problem to integrate, especially in larger cities. In Paris, there are more than 200 bus routes (more than 1000 including the greater suburbs), map readability would take a probably big hit if they were displayed on the map, or at least it would require a lot of care to do it right. A some larger cities also have a night service for busses, with routes differing from the day busses, handling those properly is also an issue.
> I have just pushed a workaround to master. [...]
> This still introduces audible artifacts when the weights reset. It prevents the LMS from exploding, but is far from perfect :/
This, combined with the fact that that issue is still open mean that a breaking change is still to be expected.
This could definitely be improved by:
* explaining what is in graphics.py, and that it builds on the standard library
* moving the download link in the introduction chapter for graphics
* having a license
What are the use cases? Forums, apparently, from the example, but what about comments for articles/blog posts? How does it integrate in my website? What license/user agreement does it use? What is the tech stack my server needs to support to deploy Muny? Does Muny handle accounts, or is that left to websites that integrate it? Do users even need an account to comment/post? What admin/moderation tools can I count on? How deep does the conversation trees go (the most active post in the example only has 13 comments, with root comments and answers to these, but can you comment on a comment?)? What does the UI look like? Is it customizable, and if so, to what extent? Functionality wise? Style wise?
"Find answers. Ask questions. Grow your community. Together!" is definitely not enough to have me considering using this product, or request early access.
There are plenty of available test for web browser stack, allowing to compare browsers and their implementation of standards, including Ladybird.
* Acid3: http://wpt.live/acid/acid3/test.html
* All browsers score 100/100
* HTML5test: https://html5test.com/index.html
* Chrome: 528
* Firefox: 491
* Safari: 471
* Ladybird: 266 (in december 2022, I couldn't find more recent figures, but I wouldn't be surprised if it were significantly higher today)
* Test262 (JS engines): https://test262.report
* Chrome (V8): 86%
* Firefox: 85%
* Safari: 85%
* Ladybird: 87% (behind on language syntax, significantly ahead on built-ins, internationalization, and AnnexB)
* Web Platform Tests: https://web-platform-tests.org/
* I don't have figures for this, but this is integrated in Ladybird's CI pipeline
* Probably others
The point is: it is quite possible to judge and measure overall progress, and the vertical slice approach they use lead to constant overall improvement.