HNHacker News
TopNewBestAskShowJobs

__sr__

509 karma · joined June 12, 2017

submissionscomments
__sr__··on Go: The Good, the Bad and the Ugly
A lot of the decisions were made because:

1. It complicates the compiler. 2. It slows down the compilation. 3. We didn’t think about it in the beginning, and can’t add it now without making non backwards compatible changes. 4. It makes the language harder to learn. 5. We don’t use this feature a lot.

I didn’t invent these reasons — search for why doesn’t golang have <insert-feature> — and you will eventually come across one or the other as a reason mentioned by one of the core members.

__sr__··on Go: The Good, the Bad and the Ugly
It’s not a design flaw that can’t be fixed down the line with coming up with a backwards incompatible v2.0 of the langauage.
__sr__··on Go: The Good, the Bad and the Ugly
I’d rather have my compiler and tools spend the time doing their job well instead of me spending ages because my language doesn’t provide the right abstractions and forces me to build everything from scratch.
__sr__··on Go: The Good, the Bad and the Ugly
> Is it interesting how little of consequence is written in Rust, or in that example Haskell, and how much is written in Go, C, and even derelict dregs like PHP. The formal perfection of a language does seem to have a great deviance from the likelihood that it serves as a basis for important work.

That is pretty simple to explain. Well designed languages have a learning curve. They require an initial investment in terms of learning — something that a lot of self styled hackers are not willing to put in. I am sure a ton of stuff is written as shell scripts.

And there is also the matter of how long the language has existed.

__sr__··on I miss Windows Phone
Yeah, that’s a pain.
__sr__··on I miss Windows Phone
And that is where you are horribly mistaken. Typical Java/.Net coders may not care about the underlying platform while coding, but people working with large scale real world applications do. Java/.Net may abstract away the APIs, they still have to use the underlying stack. Their performance is still dependent on the performance of the underlying stack.

I have seen the same application with drastically different performance characteristics on different platforms.

Linux is the king on the server because it has been heavily fine tuned for the server over the ages. The cost, while a factor, is not as relevant. Any company deploying large scale applications on Linux has to hire enough engineers to keep it running that the cost of Windows is largely offset. If it were just a matter of cost, we’d see more deployments of FreeBSD and the likes.

It is the same reason people stick to Java despite all its shortcomings.

__sr__··on I miss Windows Phone
> Linux is irrelevant on mobiles

So is Windows. And on servers, Linux is the king.

The comment was in response to the sarcastic comment about The Year of Linux Desktop. I am not really debating Linux vs others here.

__sr__··on I miss Windows Phone
The year of the Linux on desktop/laptop is a fabulous myth - nothing more. Read the attached blog before posting sarcastic comments like this one.

On the other hand, Linux is pretty much everywhere other than desktop/laptop, which are becoming increasingly less relevant.

Perhaps demise is too strong a word, but decline from its status as the apex predator of the industry is more appropriate. MS is still powerful, but it is no longer the King.

__sr__··on I miss Windows Phone
It’s hard to quantify, you have to use it to understand the difference. IMO BlackBerry had the best onscreen keyboard, followed very closely by Windows Phone. And while iOS keyboard has issues with Autocorrect, it’s gotten a lot better in the recent days and is still miles ahead of Android keyboard. There is a good reason third party keyboards are so popular on Android while most people stick to the stock one on iOS despite third party keyboards being available on the platform for many years now.
__sr__··on I miss Windows Phone
The demise had already started back then with the advent of Web apps and crappiness and delay of Vista. In fact, MS started losing its power and clout way back in early 2000s, even if the effects were not very evident until much later.

https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost...

__sr__··on I miss Windows Phone
Nokia Lumia 1520 and 930 are two of the best phones I’ve ever used. More than the tiled interface, I liked the consistancy and the coherence across the OS. The OS followed a certain set of design principles throughout and what few apps were available integrated well with it. Things like the various Hubs were very nice and useful. I’ve always liked the idea of scopes from Ubuntu Phone, and the Windows Phone Hubs were built along the same idea. I’ve always felt that there should be a central app for each category which all providers should integrate with, instead of having individual apps[1]. For example, I usually want to watch a video, not YouTube/Netflix/Amazon Prime/whatever. The Video Hub or Scope should aggregate videos from all the available sources. The same concept can be applied to a Music, Messages etc.

Coming back to the point, coherence is something Android sorely lacks. Unless you are using a phone with near stock Android[2], the apps are always out of sync with the rest of the OS in terms of the design language. And many apps don’t even follow the Google design guidelines. While there were not many non-Nokia Windows phones, given their track record on Windows desktops, I don’t think MS was going to allow that sort of interface customisation.

The lack of coherence enforces my view that Android is some sort of Frankenstein’s Monster hastily cobbled together without putting much thought into the design - internal or external.

I wish Windows Phone had survived, if only to provide some competition to Android. Let’s face it, iOS and Android don’t really compete in any meaningful way. Google is happy to stick to the volumes while Apple keeps the premium segment.

And I wish I hadn’t sold my Lumia when Nokia/MS didn’t enable 4G/VoLTE for my carrier. At least I’d be able to use it as a secondary phone.

[1] The individual apps can be there for people who like them, but they must plug into the central hub. [2] With Pixel Launcher not being released for other devices, it is not clear what “Stock Android” meany anymore — Google is fragmenting Android themselves. Can you imagine the outrage if MS kept certain Windows features exclusive to Surface?

__sr__··on I miss Windows Phone
Have you tried to Request Desktop Site? It work fine for me on my iPad and iPhone, so I don’t see a reason why it won’t work on iPad Mini. Granted, it is annoying that you can’t set Safari to always load the desktop version by default and you have to force the desktop mode every time you open a new tab, but it is better than nothing.

I haven’t used an Android tablet in a long time, but I think those load the mobile version as well.

And lastly, I’ve never had a problem with the mobile version — I actually prefer it on touch based devices.

__sr__··on I miss Windows Phone
Being better than Android is a low bar to clear. Android was, and remains, a Frankenstein’s monster[1] which was hastily cobbled together at Google to capitalise on the new marked created by the iPhone before MS could lock them out of it. In fact, if MS had brought WP 8 sometime in 2010, the story would be a lot different.

[1] It is evident by the fact that Google is still trying to fix the fundamentals like permissions, updates etc. Android is essentially what you get when you try to cram an OS primarily used on servers and high end workstations on a mobile phone and pair it with a programming environment which is also used primarily used on servers by implementing a quick and dirty runtime from scratch.

__sr__··on I miss Windows Phone
And it was left to languish for a couple of decades before the move to cloud centric multi-platform workflow left them with no other choice.

I am not a power user of MS Office, but the ones I know tell me that the macOS version still lacks features compared to Windows.

And lastly, where is MS Access for macOS?

__sr__··on I miss Windows Phone
The keyword being now. It happened when they realised that they were going to be knocked off their pedestal if they didn’t open up - not when they were at the height of their power.

By the way, is the XML Office file format really open — to the extant where one can create a third party client which works as well as the official one without reverse engineering?

__sr__··on I miss Windows Phone
> Makes you wonder what would happen if Google pulled all of their iOS apps tomorrow, and then blocked third parties/diminished the mobile browser experience on purpose.

There is a reason Google paid close to 3 billon USD to stay the default search provider on iOS. They had several opportunities to pull their apps from the platform, but they never did. It’s not random. They acknowledge that Apple is not in direct competitior as far as their core business is concerned — unlike Microsoft. They can still be the primary search provider on iOS, but Microsoft would never let that happen on Windows Phone/Mobile thanks to Bing. In fact, there was no way to set the search engine to Google in Edge for a while - and the OS wide search never offered a choice.

Allowing Windows Phone/Mobile to flourish would have meant allowing Bing to grow - something Google can’t afford. As long as Apple doesn’t become a threat to their core business, I don’t think they are going to pull their apps. And even if they do, iOS has become too big to die like Windows Phone/Mobile.

And let’s not forget, the organisations charged with preventing monopoly will slap Google with antitrust lawsuits all over the world.

__sr__··on Fish: A user-friendly command line shell for macOS, Linux, etc
Out of the mainstream formats, JSON is among the easiest to parse - thanks to the CLI tool jq. Does UCL have something equivalent?

Protobuf (or any other binary format) has the benefit of being faster to load, but I agree - it should not be be used to store things like history. It should be easy to parse history without having to write code. And with Protobuf, you need the schema.

If a binary format is going to be used, it should be optional - or perhaps there should be tools to convert the history file to/from a plaintext format.

__sr__··on Apple does right by users and advertisers are displeased
Can you elaborate? DuckDuckGo[1] sure looks like a search engine to me.

[1] https://duckduckgo.com/

__sr__··on Swift 5: start your engines
Since when did wishing for something mean someone is entitled to something?

“I wish it would stop raining.”

“I wish they'd launch it soon.”

Do any of these statements mean the speaker is entitled to something? Since when did wishing for something become a bad thing?

I am not expecting Apple to release anything. I am hoping for swift.org to one day proclaim that the toolchain and the libraries are available on Windows and other platforms. What I am expecting Apple to do is get behind its own language. I mentioned in another post in this thread -- it is not just about technical work. A lot of it has to do with marketing/evangalism. While individual contributors can help, it takes the backing of large company to get something adopted at a large scale. Why do you think Go succeeded while languages like Nim, D etc are not being adopted as well? What I expect from Apple is to spare a couple of people for the purpose of giving talks, writing blogs etc in addition to working on Swift -- something like what Rob Pike et al have been doing for Go. From what I understand, Apple writes a lot of their backend stuff in Java. Perhaps they could start investing in Swift on server side and open source some of the frameworks/libraries they come up with?

> I really am saying if you want to see better Swift support on platform X then start contributing.

I want to get Swift adopted at my workplace for the next project we are working on. I should tell the management I'll start working on it as soon as I get Swift ported to the platform I use. It would go down really well.

What makes you assume I am not contributing in whatever way I can?

> You can take a look at what IBM has been doing in this space, but in general I'm not sure what you are asking for.

IBM has done some good work, alright. But they are the only ones. A lot more work is required If Sipwift were to become a mainstream language.

__sr__··on Swift 5: start your engines
Why was it downvoted?
__sr__··on Swift 5: start your engines
I think it is best to write the "core" of your application using a language that can run on all of your target platforms -- which typically means you'll have to use C/C++/Rust or something similar that can be compiled to native code and supports somewhat sane FFI. The UI for each platform should be done using the Native UI toolkit for the platform. That way, you can avoid most of the code duplication.

If you plan to target Android, you might want to check out Google's Java to Objective-C transpiler[1]. That will let you write the core of the app in Java and transpire it to Objective-C for iOS and macOS. The UI will still have to be written using the native toolkit for the platform, though. Fair warning: I have no idea how good or bad it is -- never used it myself.

[1] https://github.com/google/j2objc

__sr__··on Swift 5: start your engines
> And just don`t mention Electron, I hate it.

Election is the new Flash. All hail new Flash! /s

Seriously, how do supposedly smart people come up with things like Electron?

__sr__··on Swift 5: start your engines
I am talking about "official" support here. Enterprises are not going to risk using an unofficial port. And unless there is a large scale adoption, it will become another niche language which only the enthusiasts would care about.

More importantly, it needs to happen while Swift still has momentum. Once a language gets old enough, it builds a certain kind of reputation. Once that happens, it is almost impossible to introduce it into new domains.

__sr__··on Swift 5: start your engines
I already use Rust for some stuff, but Rust and Swift don't compete in the same domain -- despite some overlap. Rust is more for Systems Programming whereas Swift is geared towards Application Programming. Of course, you could use them in each other's domains, but there will be challenges.
__sr__··on Swift 5: start your engines
It's not just about a framework. Some marketing/evangelism is needed. Those factors were major contributors to the rise of Go.

And the Swift community itself needs to work on making it officially available on more platforms. Officially, the only non-Apple platform that is supported is Ubuntu -- not Linux, Ubuntu. It runs on other distributions, but having “official” support for more platforms would be a big step towards acceptability. Most people I've talked to still consider Swift on Linux an experiment. Even C#/.Net Core seem to be more popular on Linux.

Having Windows support would make the language more acceptable by cross platform developers -- leading to more high quality libraries being written.

__sr__··on Swift 5: start your engines
I wish more effort were being made to make it a first class citizen on non-Apple platforms. With the popularity it has enjoyed, it could easily challenge the likes of Go, Python or even Java for server side programming.
__sr__··on Flash Is Dead: What Technologies Might Be Next?
The problem isn't so much with JavaScript as it is with the JavaScript mentality - that is not to say JavaScript doesn't have a ton of problems.

No, the real problem is the mentality of cranking out new frameworks instead of actually building something useful on top of existing ones. Every year, the JS framework of choice changes to something new and you have no choice but to move on because the one you were using until recently has suddenly been dropped as the developers have moved on to the backwards incompatible next version.

And then there is the mentality of writing libraries for the most trivial of tasks - left padding, seriously?

__sr__··on Flash Is Dead: What Technologies Might Be Next?
I wish Java and JavaScript were next! :-)
__sr__··on Data Structures for Coding Interviews
People don't have a choice but to game the system. If you can't solve the problem quickly enough on a whiteboard, you are rejected. You are typically not given enough time arrive the solution from a scratch. You either know the solution or you don't.

I agree with you, this method for interviewing sucks.

__sr__··on Ubuntu now available from the Windows store
> And macs are the only machines that cannot have passwords freely changed at will by the user

Not sure what you mean here. Can you elaborate?

← PreviousPage 5 of 5