1. 9

    I’m surprised to see that Go rated only 3/5 for simplicity. It’s far simpler than modern Java! Just consider how few concepts it has and that they’re all orthogonal to each other so you need not learn about those you don’t use.

    1. 9

      And bus factor for Go should be 5/5. It’s used a bit everywhere at Google and by all kind of large projects outside, so it’s there to stay for many, many years.

      1. 8

        A corporate google mandate could also kill the whole project at any time if they invented something much better. It may not die immediately, but I’m pretty sure they could kill it far more easily than C could be killed. One problem is a scale of 1-5 doesn’t have good resolution :)

        1. 5

          I don’t see how a corporate Google mandate would kill off Go. I could see it removing Go’s google contributions, in the worst case, but the code is open source, and there are a lot of outside companies that use Go, and several of them have implemented other languages in it (at least 2 separate Lua implementations and 1 Lisp come to mind). and Go gets a decent amount of outside developers working on it.

          At this point, Go’s use outside of Google is enough to keep it going should Google suddenly lose interest in it. But given that Go is used a lot inside Google, to the point that there exists a cross compiler from Python to Go, a sudden loss of interest from Google would be a very unlikely event. Dart, a language that is far less popular, is still quite alive and kicking at Google, on the basis of their Ads team using it, even though it has had a much harder time getting adopted outside of Google.

          I don’t think Go is going anywhere soon. I’d personally give it a 4.5/5, if C is the 5/5.

          1.  

            I very much agree. I am making plans on how to leave the Google ecosystem for emails. Last week they killed Google Inbox (announced plans to do so very soon), and I loved that product very much. I wouldn’t be surprised if Gmail gets killed too. And the same could happen to Go language.

            Inbox wasn’t a less-popular product by any means, and still it got killed.

        2.  

          I may be accidentally judging on the fact that my old job used an outdated version of java to support the old code. Modern java must be a different story for some things.

        1. 2

          For the rare occasions I need a three way diff, I use Beyond Compare, which does a very good job and can also compare other things (directories, pictures, hex data, etc.).

          1. 2

            I agree that we should be more conscious about our personal privacy and a return to the pseudonyms of the early internet can only be a good thing for that cause.

            1. 2

              Just like in real life you can use your real name while preserving your personal privacy.

            1. 1

              Having a successful open source project is a good thing and there’s no need to hide your real name, however it seems that, in case of OP, things got too personal or he got too involved in his projects.

              In my opinion, it’s better to keep some distance and to keep things technical. Basically focus on what you’d like to improve and don’t argue too much with other users or contributors, unless it’s absolutely necessary (to keep the project running for instance, but most of the time arguing on the internet is a waste of time and energy).

              1. 1

                I read the “Work begins” post but couldn’t find much info on how it’s going to be implemented. Data deduplication along with client-side encryption is hard and I’m curious how this will be solved.

                1. 3

                  Sure, I will write up and post on lobste.rs, it might be generally interesting for people even if the project doesn’t complete soon.

                    1. 1

                      Wow none of those are what I had in mind (I think). Interesting…

                  1. 1

                    Hopefully this explains some of it… https://packnback.github.io/blog/dedup_and_encryption/

                  1. 3

                    This seems to be a trend with major browsers recently — I definitely take issue with it, but I’m guessing there’s some rationale behind the decisions.

                    1. 9

                      Because URLs are hard to understand, apparently: https://www.wired.com/story/google-wants-to-kill-the-url/

                      1. 7

                        I don’t think URLs are working as a good way to convey site identity

                        That’s because they are supposed to convey a location, not an identity.

                        But it’s important we do something, because everyone is unsatisfied by URLs

                        Who’s “everyone”? Never heard anybody say they were unsatisfied with URLs. Typical google-speak where they claim they are working for the greater good, while they are simply trying to twist the web to make it easier for their algorithms to process.

                        1. 7

                          That’s because they are supposed to convey a location, not an identity.

                          A URL is a URI, so they are definitely also identifiers.

                          1. 6

                            Who’s “everyone”?

                            I’m pretty sure the numbers speak loud enough about people not understanding URLs or its shortcoming only with all the successful phishing going around and all the confusion about the meaning of the padlock (Could be argued this is not an URL issue, but IMO still relies on the user understanding what is a domain).

                            Domain and URLs should be abstracted away to the average user. The user wants to go on Facebook or Google, not https://facebook.com or https://google.com.

                        2. 5

                          I prefer what a lot of browsers do where they gray out most of the URL and show the domain name in full white/black

                        1. 34

                          I’m impressed by the lack of testing for this “feature”. It may have a huge impact for end users, but they have managed it to ship with noob errors like the following:

                          Why is www hidden twice if the domain is “www.www.2ld.tld”?

                          Who in their right mind misses that, and how on Earth wasn’t it caught at some point before it made it to the stable branch?

                          1. 11

                            url = url.replace(/www/g, '') - job well done!

                            1. 21

                              Worse

                              What’s really eye-opening is that comment just below wrapped in the pre-processor flag! Stunning.

                              1. 9

                                Wow, so whoever controls www.com can disguise as any .com page ever? And, as long as it’s served with HTTPS, it’ll be “secure”? That’s amazing.

                                1. 5
                                  1. 5

                                    Not just .com. On any TLD so you could have lobster.www.rs

                                  2. 3

                                    If I may ask, how is this worse than url = url.replace(/www/g, '')? If anything, the current implementation use a proper tokenizer to search and replace instead of a naive string replace.

                                    1. 2

                                      That’s just my hyperbole.

                                2. 10

                                  Right, the amateurishness of Google here is stunning. You’d think with their famed interview process they’d do better than this.

                                  On a tangential rant, one astonishing phenomenon is the helplessness of tech companies with multibillion capitalizations on relatively simple things like weeding out obvious bots or fixing the ridiculousness of their recommendation engines. This suggests a major internal dysfunction.

                                  1. 14

                                    To continue off on the tangent, it sounds like the classic problem with any institution when it reaches a certain size. No matter which type (public, private, government…), at some point the managerial overhead becomes too great and the product begins to suffer.

                                    Google used to have a great search engine. It might even still be great for the casual IT user, but the signal-to-noise ratio has tanked completely within the past ~2 years. Almost all of my searches are now made on DuckDuckGo and it’s becoming increasingly rare that I even try Google, and when I do it’s mostly an exercise in frustration and I spend the first 3-4 searches on quoting and changing words to get proper results.

                                    1. 5

                                      Large institutions collapsing under their own managerial weight is more of a ‘feature’ in this case.

                                      1. 1

                                        What are a few examples of queries for which DDG produces better results than Google?

                                        1. 2

                                          I’m not able to rattle off any examples, sorry. I’ll try to keep it in mind and post an example or two, but don’t hold your breath :)

                                          I’ve been using DDG as my primary search engine for 2-3-4 years now, and have tried to avoid Google more and more in that same time frame. This also means that all the benefits of Google having a full profile on me are missing from the equation, and I don’t doubt that explains a lot of the misery I experience in my Google searches. However, I treat DDG the same and they still manage to provide me with better search results than Google…

                                          In general every search that includes one or more common words tend to be worse on Google. It seems to me that Google tries to “guess” the intent of the user way too much. I don’t want a “natural language” search engine, I want a search engine that searches for the words I type into the search field, no matter how much they seem like misspellings.

                                  1. 9

                                    You either use an existing framework, or you end up re-inventing one… poorly.

                                    1. 6

                                      I’ve yet to see a web framework I truly enjoy using. Most of them don’t even try to tame the incidental complexity of the web, preferring to heap on even more. I think this is because the type of people that make web frameworks often love the web to the point where they’re blind to the incidental complexity.

                                      These frameworks seem to take special delight in taking over every aspect of your application, because ‘convention.’ Apparently, one of the greatest evils of software development is that there is no standard directory for models unless we institute The Right Way. Meanwhile, massive coupling makes testing difficult, causing years of “Fast tests using this one weird trick” presentations continue to be given.

                                      The best libraries are the ones you can lock away somewhere and forget about.

                                      1. 1

                                        Enjoyability seems to me to be a bad criterion to judge a tool on. I may enjoy one hammer more than another, but I still need to use specific ones for specific tasks and the ones I enjoy less are no less functional and suitable.

                                        I don’t think the remainder of your post depends on your remark about ‘enjoying’ a web framework, which I feel is extra evidence for that not mattering.

                                        1. 3

                                          Enjoyability seems to me to be a bad criterion to judge a tool on.

                                          Also “Enjoyability” is based on what timeline you measure it on. If you measure it based on day 1 enjoyability, day 100 enjoyability or day 1000 enjoyability. Stuff like unit testing and fuzzing might not be very enjoyable on day 1 – might be far more enjoyable on day 100 and put you a state of absolute bliss with same testing and fuzzing on day 1000.

                                        2. 0

                                          Of course web frameworks are not optimal. However, I take the leaky abstraction here and there any time over the mess I have seen with non-framework code. I did Python starting with Python 2.3 which was released in the early 2000s. Back then, I didn’t do Python web development much, yet every now and then I wrote something or looked at options how to do things. This was the time of mod_python and still cgi. Nowadays we have Django, Pyramids and if you feel like having a bit more freedom - Flask. I must say I wouldn’t want to go back.

                                          Potentially, if you have very special requirements, that actively go against the typical patterns, no framework is an option, but other wise it isn’t. at least I wouldn’t like to take over maintenance of such a codebase.

                                          That’s actually quite a nice indicator: “If someone would use that advice, would I like to take over maintenance of that code base?”.

                                      1. 4

                                        Seems fair I guess. They probably made thousands of easy ad dollars off Nintendo’s property, so it’s normal they have a problem with this.

                                        1. 4

                                          However, is Nintendo actually making profit of the original Zelda, for example? I mean, is there a way for me as a player to get to play the original Zelda without having to search for a second hand NES and fishing for the original cartridge in flea markets? I get that is their intellectual property, but still it’s not like they still sell those games

                                          1. 18

                                            The current philosophy of the law is that Nintendo has an eternal right to tax Zelda. It was never meant to go into the public domain, will never go into the public domain, and if legislators have funny ideas about this stuff then they’ll use their billions of previous culture tax revenue to bribe (er… “lobby”) them to have the right ideas again.

                                            Anyone who gripes about this state of affairs is obviously a commie trying to steal from them.

                                            1. 2

                                              In my understanding, in France and probably other countries, works (not sure what, but writings and musics are included for example, probably programs/video games?) enter public domain 70 years after creator’s death.

                                              How can this apply to a living company?

                                              1. 2

                                                The original author(s) license (indirect in employment contract or direct via a specific one) rights to the work. The ‘death’ clause becomes really gnarly when the actual work of art is an aggregate of many copyright holders.

                                                This becomes more complicated as the licensing gets split up into infinitely small pieces, like “time-limited distribution within country XYZ on the media of floppy discs”. Such time-limit clauses are a probable cause when contents to whole games suddenly disappear, typically sublicensed contents like music.

                                                This, in turn, gets even more complicated by the notion of ‘derivative’ work; fanart or those “HD remakes” as even abstract nuances have to be considered. The stories about Sherlock Holmes are in the public domain, but certain aesthetics, like the deerstalker/pipe/… figure - are still(?) copyrighted. Defining ‘derivative’ work is complex in and of itself. For instance, Blizzard have successfully defended copyright of the linked and loaded process of the World of Warcraft client as such, in the case against certain cheat-bots - and similar shenanigans to take down open source / reversed starcraft servers.

                                                Then a few years pass and nobody knows who owns what or when or where, copyright trolls dive in and threaten extortion fees based on rights they don’t have. Copyright in its current form has nothing to do about the ‘artist’ and is complete, depressing, utter bullshit - It has turned into this bizarre form of mass hypnosis where everyone gets completely and thoroughly screwed.

                                                These aspects, when combined, is part of the reason as to why “sanctioned ROM stores” that virtual console and so on holds have very limited catalogs, the rightsholders are nowhere to be found and can’t be safely licensed.

                                            2. 10

                                              Yep, Nintendo do still sell these games, and it is possible for you to buy them. I bought one of these last week.

                                              https://www.nintendo.com/nes-classic/

                                              1. 2

                                                They also still sell them on the Wii U and 3DS Virtual Consoles.

                                                1. 1

                                                  Oh sure, I totally forgot about those new editions, you’re right

                                                  1. 2

                                                    I just got a NES Classic and SNES Classic. They are pretty dope! I think that they are starting to care a lot more now that these are a thing :)

                                                    This does, however, have the unfortunate side effect of players not being able to play their favorites unless they are one of the ~60 games on these two classic editions. So, that’s sad. :(

                                            1. 1

                                              Having emojis, which are more and more often used by various tools (often developed in macOS), would be nice. Even better is proper unicode support for non-English languages. Chinese characters in particular are hard to work with as they can’t be aligned properly.

                                              1. 1

                                                What’s the problem with Chinese characters? They align correctly (that is, fullwidth) for me on Windows console.

                                                1. 1

                                                  What’s the problem with Chinese characters? They align correctly (that is, fullwidth) for me on Windows console.

                                                  I’ve made a CLI GUI application and while Chinese characters displayed fine in Linux and macOS, they had alignment problems in Windows. Specifically, the characters would overlap their container and be drawn where they shouldn’t. Chinese characters seem to work fine in regular CLI app but in more complex, full screen ones, it doesn’t seem so reliable.

                                              1. 9

                                                The worse open-plan office I’ve been in is when developers were sharing the room with marketing. There was time it was literally impossible to work or concentrate. On busy day, marketing guys would spend all day talking loud on the phone. On quiet days, they’ll spend most of the time chatting loudly with each others. Even when I had urgent work, I had no choice but to give up and browse the web or go out, since I couldn’t do any work. Talk about productivity.

                                                It’s not even a criticism of the marketing department - they enjoy their job and good for them, but it was absurd to put us all in the same room.

                                                1. 8

                                                  Having an open office is basically telling your employees that you see them as nothing more than cattle.

                                                  1. 4

                                                    Well said, if it works with chickens or cows, surely it must work with humans. ¬¬

                                                    1. 3

                                                      Isn’t that the plot of Texas Chainsaw Massacre 2?

                                                1. 23

                                                  Basically what the web was before the recent trend of “minimalism” where links and buttons look like text, all text is light gray on light gray background, nothing work without JavaScript enabled, etc.

                                                  If they have to call this “new” trend “brutalism”, why not. I’d call that common sense.

                                                  1. 6

                                                    the first computer programs with mainstream success were word processors.

                                                    The early web was filled with “huge images to do designs that HTML doesn’t support”, and Flash existed for a reason. People have always tried to lay stuff out in different ways

                                                    The brutalist web might have always existed in a certain subset of the web, but it stopped being the web ever since image tags and tables were a thing.

                                                    1. 5

                                                      It’s the only way to sell it. And if re-branding the price, I’d take it.

                                                      1. 6

                                                        problem is people will create the same design but make it with 10 layers of css and javascript to slow it down.

                                                    1. 3

                                                      The three things that always bothered me about my 17-inch MacBook Pro and why I switched back to Windows are:

                                                      • No longer a 17-inch screen version
                                                      • Weird AZERTY keyboard layout (there’s no key for []{} and I needed to press and memorise 3-keys shortcuts like Alt+Ctrl+5 for each of these characters).
                                                      • Cmd and Ctrl key roles are swapped which made it annoying when working on a Linux or Windows VM at the same time.

                                                      Other than that I loved the POSIX environment and terminal emulator but these issues bother me too much.

                                                      1. 1

                                                        Installation is a bit too complex for a minimal blog generator. Maybe create a Homebrew formula for it?

                                                        1. 3

                                                          While I’d argue it isn’t that complex, you’re generally right – I plan to automate the installation and customization process.

                                                          1. 2

                                                            nix / nixos could probably solve this problem quite nicely.

                                                          1. 20

                                                            “That’s right. A web server. Your CPU has a secret web server that you are not allowed to access, and, apparently, Intel does not want you to know about.” Rejoice!

                                                            1. 1

                                                              The letter from Andrew S. Tanenbaum is interesting too:

                                                              Apparently an older version of MINIX was used. Older versions were primarily for education and newer ones were for high availability. Military-grade security was never a goal.

                                                            1. 1

                                                              Anyone has a link to the commit or initial bug report/fix?

                                                              1. 1

                                                                The bug report (which will probably have the patch, too) is still locked, and the details of the exploit aren’t public yet. My guess is that it’s related to this:

                                                                Devices with the Play Store, as well as AOpen Chromebase Commercial and AOpen Chromebox Commercial will be rolling out over the next few days.

                                                                They probably don’t want to release details until everything is patched.

                                                              1. 3

                                                                I use Firefox on desktop and mobile, but I found that it’s often necessary to switch back to Chrome for some websites, which are either way too slow or plain broken.

                                                                This is a pity, more and more developers target Chrome only, do all the optimisations for it, and kind of assume it will work on other browsers. Chrome is basically the new IE and Google knows that well. Now they can ship whatever change they want that will optimise google.com and YouTube and too bad if the rest of the web and other browsers are broken as a result.

                                                                1. 1

                                                                  It seems to be aimed at a specific project, but which one?

                                                                  I don’t think what he describes is a general attitude in open source. In my experience, the biggest issue in small projects is that many, even very popular ones, are pretty much unmaintained or abandoned with nobody with a permission to merge PR.

                                                                  I’ve never seen a project that refuses PR due to an LTS policy. Some however don’t want to merge because it breaks backward compatibility, which maybe is what this article is talking about. But it’s generally a good thing to have someone to say “no” to a change if it’s going to break the build of dozens of users.

                                                                  1. 3

                                                                    On my spare time I continue working on my note taking app Joplin. Having a try with an Electron client for Windows at the moment. This framework is new to me but I’m impressed how easy is to get things running on it.

                                                                    1. 5

                                                                      This looks pretty neat. Interesting that they chose node.js to write it in. I can see the sync with Onedrive and various other services being super useful for some people.

                                                                      I’ve used Notational Velocity a lot in the past. These days I just use Markdown and The Silver Searcher :)

                                                                      1. 3

                                                                        Thanks, actually I’ve started with the Android app in React Native, and then I figured I could re-use most of this code to create a desktop client. There are some drawbacks working with JavaScript but it definitely makes it easier to write cross-platform code. Silver Searcher with markdown files seems like an interesting custom solution too!

                                                                        1. 3

                                                                          I was pretty un-interested in this (after all, vim and grep is my text-based TODO management system), but when I kept reading and discovered you had a console-based app syncing with a mobile client, it really got my interest. Nice work! Frankly, I still see a lot of jank in the stack you’ve chosen, but I won’t bother with criticism. Its just an awesome app. :)

                                                                          However, I must now attest to wondering what better technology to accomplish a ncurses->objcMsgSend nirvana?

                                                                          Would you do another app with this, now you’ve done one?

                                                                          1. 2

                                                                            Thanks, I realise it’s not the most popular stack though in this case it got the job done :)

                                                                            I’m not familiar with what ncurses->objcMsgSend is? Is that a macOS thing?

                                                                            1. 1

                                                                              ncurses on the console (terminal), objcMsgSend on the iOS side of things. Its just a euphemism for what you’ve done .. albeit not a very accurate one. :)