HNHacker News
TopNewBestAskShowJobs

shurcooL

3,365 karma · joined November 8, 2012

I seek a better understanding of the world, so I can help make it simpler and better. I enjoy writing correct, high-quality Go code. Minimalist.

https://dmitri.shuralyov.com/about

submissionscomments
shurcooL··on Apple Releases iOS 11.4 with Messages in iCloud and AirPlay 2
Some additional questions about it on my mind:

• Does "Messages in iCloud" work for syncing regular SMS messages too, or does it only include iMessages?

• It looks like there's no corresponding macOS update today to add Messages in iCloud support, is there? Should we expect it to be bundled into the next minor macOS patch, or is it more likely to be pushed into macOS 10.14?

shurcooL··on Completely Silent Computer
As someone who has used the fanless 12" Retina MacBook, I can't put in words how nice of a feeling it is to have a fully silent computer. It's hard to understand why without actually experiencing it yourself, but it was a really big deal. If not for the awful keyboard ruining the experience, I wouldn't ever give it up.

It may sound (no pun intended) like an exaggeration, but I think more powerful computers going completely silent (fanless) will be the next most noticeable breakthrough since we got Retina displays on computers in 2012.

shurcooL··on Sublime Text 3.1 Released
Update: It's fixed in 3.1.1.
shurcooL··on Sublime Text 3.1 Released
Is it just me, or does the About dialog show "Version 3.0, Build 3170" instead of 3.1?

Edit: Not just me. https://twitter.com/amenthes_de/status/993467306201309185

shurcooL··on “Lifefaker.com makes faking perfection easy”
I care very little about things like this, but if it were really $1 per month, it’d be very tempting to get this just for fun.

I think a real version would have to cost a lot more than that. But the service price can be reduced as it scales to more users.

shurcooL··on Go's New Brand
I was very happy to see the Go font was a part of this (page 19).
shurcooL··on Go's New Brand
Just checking, but did you see page 19?
shurcooL··on Show HN: Interactive WebGL visualization of all 47K buildings in Manhattan
I'm guessing the largest cause of the performance not being great is the large amount of data, and the approach to render it is not optimal. If the same rendering algorithm was implemented using OpenGL instead, I suspect the performance would not be significantly different from this WebGL version.

If you want a random example of a well-optimized demo that uses WebGL for rendering, try the demo at https://www.funkykarts.rocks/demo.html and see how well that performs.

shurcooL··on Go gets preliminary WebAssembly support
That's right.
shurcooL··on Go gets preliminary WebAssembly support
In theory (if someone does the non-trivial work), probably.
shurcooL··on Go gets preliminary WebAssembly support
"thread" here refers to logical thread. A single logical thread can be used to run any number of goroutines, just one at a time.
shurcooL··on Go gets preliminary WebAssembly support
They are supported. Similar to how they're supported on other architectures, by having a runtime with a scheduler.
shurcooL··on What did Alan Kay and Steve Jobs talk about at the 2007 iPhone keynote?
I agree.

I've been using an iPad mini with Cellular as my phone-replacement mobile device since the day iPad mini came out. It fits in my pocket (not as comfortably as a phone, but well enough).

My only other device is a 15" MBP.

To be more accurate, the iPad mini is 7.9", not 7" though. And 4:3 aspect ratio. So in area, it's still much bigger than a 6.5" 16+:9 phone would be.

shurcooL··on RSS is undead
Does anyone know how well JSON Feed [0] is doing?

[0] https://jsonfeed.org/

shurcooL··on Ask HN: How did you become fluent in English?
To answer the question in title, I came to Canada and lived here for the last 20~ years. Since day one, I always opted to try to use English (rather than my first language) whenever possible. It was hardest at first, but the more I did it, the easier it became.
shurcooL··on Ask HN: Examples of great landing pages?
Yes, I saw it on page 3. It had 0 comments.
shurcooL··on Gokrazy: A pure-Go userland for Raspberry Pi 3 appliances
> The motivation is that @stapelberg spends way more time on C software and their various issues than he would like. Hence, he is going Go-only where feasible.

This is so cool! I’m very happy to learn an effort like this exists, and looking forward to perusing the code for it... in Go (a language I really enjoy reading).

shurcooL··on Guide to Slack import and export tools
That’s precisely my view on this too.
shurcooL··on Show HN: URL Canary – Get an alert when someone finds your secrets
https://blog.github.com/2015-02-05-keeping-github-oauth-toke...
shurcooL··on iOS 11 bugs are so common they now appear in Apple ads
A way to interpret it is that when she looks at her phone and it unlocks, it gives her the idea that it’s her superpower and she can look at anything and have it unlock.

In reality, it’s the iPhone doing it, and it only does it when she looks at it.

Basically, the ad tries to show how the girl feels. I think it captures that pretty well; at least I liked it (more than most other recent Apple ads).

shurcooL··on Ask HN: What laptop do you use?
I was lucky it happened last year, just before the repair extension program [0] ended for this model. Given the first logic board lasted a good 6 years of heavy use, I hope the new one doesn't die too soon.

That said, unfortunately, the TYUIO keys have recently started acting up occasionally. Apparently it's a common enough hardware failure that there are existing results if you google it.

When I do have to get a new machine, I'm planning to get the latest 15" MBP. Hopefully a new refreshed version comes out by then with either Coffee Lake or Cannon Lake CPUs. Also, not holding my breath, but I do hope they keep making the keyboard better [1] and less susceptible to complete failure due to a little inevitable dust [2] getting in there...

[0] https://www.apple.com/support/macbookpro-videoissues/

[1] http://pdfaiw.uspto.gov/.aiw?docid=20180068808

[2] https://theoutline.com/post/2402/the-new-macbook-keyboard-is...

shurcooL··on Ask HN: What laptop do you use?
Yep, I’m aware of that, thanks. 8 GB is enough for my current needs; I’m not doing anything memory intensive or running many VMs.
shurcooL··on Ask HN: What laptop do you use?
How are you finding typing on that keyboard, assuming you do it more than just a handful of hours per day?
shurcooL··on Ask HN: What laptop do you use?
An Apple MacBook Pro (15-inch, Late 2011), with a high-res anti-glare screen, maxed out CPU and GPU options, 8 GB RAM (can be upgraded to 16), and a Samsung 850 Pro SSD. Very happy with it. Otherwise I would’ve upgraded it by now, but I’ve not had a need to so far.
shurcooL··on Show HN: Ecoji, a new base1024 emoji encoding
I also made something very similar, except it used hex-encoded hashes as input. [0]

[0] https://dmitri.shuralyov.com/projects/hash-emoji/

shurcooL··on Show HN: Ecoji, a new base1024 emoji encoding
I prototyped that very idea at https://dmitri.shuralyov.com/projects/hash-emoji/.
shurcooL··on Show HN: Buy Me A Coffee – A free, fast and friendly way to receive donations
Thanks!

About point 2, let me clarify. I know that I could either pick a pre-existing category or type my own freeform text. I was trying to make the decision of which to go with based on what pre-existing categories existed. To make that decision, I wanted to be able to see the full list of categories. I was able to see that full list and make my decision, but in an awkward way. Hopefully that makes sense.

shurcooL··on Show HN: Buy Me A Coffee – A free, fast and friendly way to receive donations
> We are waiving the 5% platform fee for HN users for LIFETIME! We'd also love to be your first supporter.

I'll take you up on that offer. https://buymeacoff.ee/shurcooL Thanks!

Some feedback from my signup experience:

    	1. I saw someone in the comments mentioning that it'd be nice to be
	   able to connect payout methods later, and a reply said there was
	   a "skip for now" button. So, I was looking to use it (not expecting
	   to get a lot of coffee at this time...).

	   However, the page asking to pick Stripe or PayPal came up, and there
	   was no "skip for now" button anywhere in sight. I was taken aback a
	   bit. I was thinking maybe I just need to click on the dashboard link
	   on top, but was worried that might rip me out of the onboarding flow...

	   In the end, I decided to just add a Stripe account now. So I picked
	   Stripe (over PayPal), and THEN it gave me the offer to skip adding it.
	   What!? Why show the "skip adding payment info for now" option only
	   after making the user go through the decision of picking a payment
	   provider? I'd rather have seen the button on the first page.

	   Of course, then it said my page wouldn't be visible publicly until
	   I do add one, so there wasn't a point in skipping anyway.

	   That whole "make a decision about payment/actually you can do that
	   later/actually you have to do it now" experience felt unfriendly and
	   probably could be improved.

	2. On the Dashboard, there's "What do you do?" input with an input field.
	   It shows some pre-populated (I presume) options when you begin typing.

	   I wanted to pick something that best describes me (open source software
	   engineer working mostly with Go), so I wanted to see all the options
	   available. But I could only see them if I type at least one letter.

	   So I tried typing A, B, C, etc. In the end, I was able to get a gist of
	   what categories were there and which ones weren't (there's "Developer",
	   but nothing else quite fitting), but I had to go in a roundabout way of
	   accomplishing it. Perhaps this could be made friendlier too. (Just a
	   normal dropdown that shows all options when clicked, maybe?)
P.S. That's a nice growth strategy.
shurcooL··on Go and Versioning: Minimal Version Selection
One of my biggest fights is getting people to use latest versions of high-quality software. More often than not, it avoids problems that are already resolved at tip. Helps discover newly introduced issues quickly and before it's a lot of trouble to fix them. Overall, I think it amortizes the cost of software development and reduces it on average, even if there are more smaller bursts where fixing work needs to be done, it's often trivial to do so.

To that end, I even created Go Package Store [0] to make updating packages in one's GOPATH easier and more transparent. I use it at least once every few days to update my dependencies and deal with anything that comes up (rarely; most often I just need to leave a review comment on the fresh CL/PR). It's a great experience for me.

Despite that, I have a feeling I might like MVS better than the traditional manifest+lock systems that try to pick the latest versions at project start time, but then keep them frozen there until people explicitly update. It makes people less likely to update on their own because they know a new project would start off with latest versions of dependencies anyway.

With this system, you couldn't rely on that, and instead you have to update yourself explicitly from the start. I hope this knowledge gets people to take on that responsibility more often and makes it a good habit. Don't update when you need build stability, but when you have a quiet period and are able to update for some API changes, do so and reduce your tech debt for the future.

> More than anything else, I wanted to find a version selection algorithm that was understandable. Predictable. Boring. Where other systems instead seem to optimize for displays of raw flexibility and power, minimal version selection aims to be invisible. I hope it succeeds.

I'm keeping an open mind and looking forward to seeing how it works out. I have a feeling I might like it despite it seemingly optimizing for the opposite of what I fight for. I'm hopeful.

[0] https://github.com/shurcooL/Go-Package-Store#readme

shurcooL··on Go accepts patches from GitHub pull requests now
You can actually access a mirror of Go’s issue tracker (hosted on GitHub) offline by using a tool [0]. Of course, a lot of code was written to make it possible, and it’s a read-only view.

[0] https://godoc.org/golang.org/x/build/maintner/cmd/maintserve

← PreviousPage 3 of 34Next →