509 karma · joined June 12, 2017
Just to be clear, I use Windows only when I have to -- never by choice.
That said, my point is that even if Microsoft's acquisition of GitHub turns out to be a bad thing, I'd wait to see how things go before migrating en masse.
I like to think that tablet sales are reaching their stable values rahpther than just declining.
It’s a matter of personal taste, I guess.
Strictly speaking, Android tablets never even competed in the same arena as the iPad. Samsung is an exception, but they don’t control the ecosystem — which makes things much harder for them — even if we ignore their atrocious software.
So should I audit every dependency of every single package I use? Every time I upgrade every single package? Nobody is forcing me to use anything, but I can't very well use the ecosystem if I avoid every single package either.
> The existence of garbage doesn't mean the system is broken, or that the ecosystem is "chaotic and insecure".
That is exactly what it means. If you allow anything and everything with no quality checks, you gain "quantity" but lose out on "quality".
> It means that it's inclusive, and anyone can make a package, no matter how terrible you might think it is.
Would you be comfortable someone who can't drive being your chauffeur? Or perhaps someone with know experience with civil engineering building your bridges? Or perhaps someone with no knowledge of finance being your banker? All in the name of inclusiveness, of course.
Why is it any different for software? The things we are talking about are the integral components of The Web -- something we relay on more than we care to admit -- it is not some toy.
Be as inclusive as you want, but not at the cost of quality -- at least not for something that affects the entire world.
And everyone can make a package is like saying everyone can build a bridge. But would you use it?
Agreed -- I use awk all the time in shell pipeline.
> I don't get the Perl hate.
The problem is not with writing Perl -- I don't mind using Perl to write scripts and tools. In fact, I like it better than Python for writing glue code.
Reading Perl code -- especially if the code base is old and has been worked upon by multiple people -- now that is a real pain. Don't get me wrong, I have seen some really well written Perl code and have had the good fortune of working with some really smart Perl programmers. But the majority of Perl code I have encountered has been unreadable mess that makes me want to pull my hair out. There are times when I feel it is more productive to rewrite the code in Python than to spend time on the existing code.
> If you follow clean code principles Perl is fine.
Agreed -- except most Perl coders don't. Worse, they make a large chunk of people who contributed to CPAN -- something which was one of the major reasons behind the popularity of Perl.
> Use the tool that fits the job. I have no loyalties to any programming language.
Couldn't agree more.
No, but it does need to be brought on par with the state of the art in UNIX world — things like process sandboxing, container support, process limits (like cgroups), a modern development environment (like .net is for Windows), better package management (App Store is a bad joke), cross platform development between for iOS and macOS, stability, performance enhancements etc. In fact, I am OK with the UI — it could do with some modernisation and new features, but for the most part, it is very usable.
And the tooling could definitely do with an upgrade. They are still using an ancient version of bash, for example. If they can’t use newer bash because of GPL, they could write their own shell, for example. The fact that something like Homebrew is the go to package manager tells the story of a major gap.
Apple did something similar when they switched from Classic Mac OS to Mac OS X - a transition which helped them stay alive and eventually bounce back when almost every one had given up on them. The transition indirectly led them the ultimate success of iOS and iPhone.
Microsoft was left behind in the smartphone race because they were late to the transition — the smartphone revolution started when they were still going through it and they were caught empty handed. They had nothing to show when they desperately needed an OS for smartphones. Had they launched the equivalent of Windows Phone 8 in 2009 or 2010, the history may have been very different from the one we know.
But the world has come full cycle, while the Microsoft Windows ecosystem is still relatively young and can probably keep going for another decade or two, Apple’s OS is starting to show its age. It’s not just the age of macOS — it is much older then that. Apple finally decided to overhaul their filesystem, but other things like the kernel, the API etc. still need the treatment.
Simple, they all serve a particular purpose. Scala serves a particular purpose, so does Kotlin.
I have found Kotlin to be an easy to use modern language which the JVM ecosystem was IMO lacking. That said, I am not a Kotlin advocate. I’d use if I had to choose from the JVM languages. Otherwise there are plenty of other languages and ecosystems to choose from.
No one likes small enhancements over an existing language in a new language - it is usually not worth switching over. Remember D? IMO, Kotlin developers have made sensible choices in most cases while retaining full Java interop - something I consider an achievement.
The author complains a lot about how Kotlin is different from Java. Err.. it is a new language — it is supposed to be different — otherwise why bother?
> I have my favorite set of JVM languages. Java in /main and Groovy in /test are the best-performing duo for me. In summer 2017 my team started a new microservice project, and as usual, we talked about languages and technologies. There are a few Kotlin advocating teams at Allegro, and we wanted to try something new, so we decided to give Kotlin a try.
The opening lines set the tone for the article. The author tried Kotlin because other people wanted to — not because he found it interesting. Most people learn a new language by writing a toy project or two. They don’t start with a real project. And of course it will take time to get used to a new language and be as productive in it as as you were in the old one. The friction is always there, no matter which language you are switching to.
I am sorry, but I can’t take this article seriously — I feel that it’s written for the sole purpose of venting author’s frustrations.
I am not saying it is bad. But I’d like to know about it before I dive in.
As far as I can tell, this editor is aimed at tech savvy people like developers, sys-admins etc. They may not care about the exact language or framework, but I can assure you, they do care about things like security and performance.
Rust is one of the most discussed topics in the developer community these days. I can’t fault the OP to use it to highlight the post. Had they said something else, I’d likely have ignored it as Yet Another Text Editor like Visual Studio Code, Sublime Text, Atom etc. IMO, they did a good job highlighting how it is different.
Note that I do not fully agree with the parent.
[Read the Hacker News guidelines about posting links to videos, PDFs etc]
No, it succeeded because there was a need for a UNIX like OS not encumbered by lawsuits (like BSDs) or costing a fortune (Solaris, SGI etc.).
Linux is a clean room implementation that doesn’t borrow any code from proprietary AT&T UNIX, ensuring that it has future. That, and the backing of FSF means it is not going to be sued into oblivion - something that could not be said for BSDs and other free variants back in 1990s. No one wants to invest into a something that may be shut down anytime. It is the fighting thtpat hurt the BSDs the most — causing them to be overshadowed by Linux despite being superior in many ways back in the days. Some would argue that they are still technologically superior in certain areas — but that is debatable.
Err... no. Not unless the installed base reaches a critical mass. And certainly not when the market share is not even 0.1%. macOS (or even desktop Linux) has a higher installed base and they don’t bother Microsoft significantly.
I’d be more optimistic if the OS had not been around for two decades. It had its chance when the likes of Vista was released. If it didn’t make a dent back then, it is not going to make one now - especially since Windows is at its best in terms of usability. Sure there are concerns about privacy, but those didn’t prevent Google from acquiring a (almost) monopoly in mobile market. Microsoft’s own attempts went nowhere — and they have infinitely deeper pockets compared to people behind ReactOS.
And even if it does gain momentum, I am fairly sure that Microsoft will find a a way to sue them into oblivion.
And then what? They find themselves duplicating the same code again and again because Go doesn’t provide good abstractions to reuse code. Or that they write a ton of code to do what could be achieved in a few lines in a reasonable language.
You learn the language in a week because there is not a lot to learn. Shell scripting is simple to learn as well, but nobody is building anything beyond short scripts using it.
An ideal language should allow the user to be a productive after a short time, but should have have enough power for advanced users as well.
One of the things I hate the most about Go is that source code generation is considered an acceptable solution to many problems. Perhaps I should go back to C — the preprocessor can be used to generate code as well as anything. In fact, the predecessor to C++ was a preprocessor used to generate C code that simulated C++ like behaviour.