HNHacker News
TopNewBestAskShowJobs

sauerbraten

109 karma · joined April 15, 2012

https://github.com/sauerbraten
submissionscomments
sauerbraten··on iPhone 14: Cheapest Country to Buy in 37 Countries
Not sure if the site was updated, but there are multiple comments here about sales tax missing for the US price. The site clearly states it added that tax for Canada and the US, and shows two prices for each country reflecting the lowest and highest tax applicable based on where you buy the phone.
sauerbraten··on OVH Cloud shuts down Guerrilla Mail
Funny, I use https://addons.mozilla.org/en-US/firefox/addon/mobile-wikipe... because I generally prefer the mobile site, even on desktop. (Same with Twitter by the way.)
sauerbraten··on Why we’re changing to the AGPL license
Okay I get what you mean now, I looked at it from a legality POV. I agree with you that plagiarism might not be illegal but still unethical.

Why do you not just pick a license that forbids uses not compatible with your ethical standpoint, and chose to just not enforce the terms should they be violated? This way, companies are likely to respect your intent and preference and you don't have to make use of a legal system you don't support.

sauerbraten··on Why we’re changing to the AGPL license
Is it really plagiarism if you explicitly allow them to use and even sell your code, though? Also, plagiarism implies they don't give you credit and instead put their own name on it.
sauerbraten··on Show HN: My notes on Working with Go
I checked out the example code for arrays (https://github.com/betty200744/ultimate-go/blob/3de8a053d9f7...) and noticed that OP seems to misunderstand a few things about Go arrays:

- the cheat sheet differentiates between 'declaring' and 'declaring and initializing', but in Go there are no uninitialized arrays (or slices) - a lot of times in this file, a slice is created instead of an array (lines 18, 21, 25, 31) - arrays in Go don't really have a capacity (it's always the same as the array's length) - the built-ins append and copy as well as the sort functions don't accept arrays (I assume this is why slices are created?)

sauerbraten··on Don’t bail out the cruise industry
I don't know much about this, but I assume the advances in renewables and carbon neutral ships is driven mostly by regulation aimed to reduce pollution. Can we really give the cruise companies a lot of credit for that?

> The demand for cruises is not going to go away.

Good, then there will still be cruise ships after the industry felt the consequences, and perhaps they will have learned something.

sauerbraten··on Why Cloudflare Chose AMD EPYC for Gen X Servers
*BND, from Bundesnachrichtendienst
sauerbraten··on Destroying C with 20 lines of Haskell: wc
isspace is defined as a macro at the top of the file, and it's definitely not locale sensitive ;)
sauerbraten··on Finding the real first post on Instagram
I have my doubts about the timestamps on these first posts. How did Kevin get from Pier 38, where Mike supposedly photographed him at exactly noon, to Todos Santos at ~2:30pm, when it's 28 hours away?
sauerbraten··on An algorithm wipes clean the criminal pasts of thousands
The code in the screenshot is valid Go (switching on strings, no parentheses around the if condition, incrementing a map value using ++) and could even be the output of go fmt (with the { on the same line as the if).

The app itself appears to be written in Ruby (the github link is posted elsewhere in the comments), and looking at the image included in the article further down I assume the code is from a Go app that takes the Ruby app's logs and generates some statistics.

sauerbraten··on Former Facebook exec says social media is ripping apart society
Don Jon, for those wondering. (At least I think that's the one sjg007 is talking about.)
sauerbraten··on System76 is moving product design and manufacturing in house
> So where is the option for an XPS with Linux, any flavor (or even Freedos or no OS) pre-installed?

The XPS 13 is available as a developer edition with Ubuntu instead of Windows preinstalled: http://www.dell.com/en-us/work/shop/productdetails/xps-13-93...

sauerbraten··on Germany's New Crowdfunded Train
Your BahnCard 100 is only for DB trains, and their partners like regional transport associations. Not sure why you suspect it to be valid for a competitor's service. And I doubt Locomore will ever partner with DB...
sauerbraten··on Macbook Pro Touch Bar runs watchOS
Here you go: http://www.dell.com/us/business/p/xps-13-9360-laptop/pd?3x_n...

You have to use the normal XPS 13 page and choose Ubuntu from the OS filter.

sauerbraten··on Users You Don’t Want
The user(s) you might not want are the parents, not the disabled child. Proper care for the child represents their quite unique problem that they want you to solve so they can use your product. The child having special needs is what sets these patents/users apart from the parents/users you made the product for.
sauerbraten··on How not to write an API
Correction: an API account can see all users that registered through the API with that account's key.

Still, WTF!?

sauerbraten··on German freemail sites trick Firefox and Chrome users into removing AdBlock
Just to clear one thing up: the fake warning message doesn't say the security is "compromised", but rather "limited" or "constrained": http://pda.leo.org/ende/index_de.html#/search=eingeschr%C3%A...

What they pull is still shady, but the text seemed a bit sensationalist at that point.

sauerbraten··on Show HN: Goatee – Redis, WebSocket notifications in Go
What a coincidence, I see you use JSON config files: I wrote a tiny package to parse commented JSON files not long ago, maybe it would be a good fit for Goatee?

https://github.com/sauerbraten/jsonconf

sauerbraten··on Ask HN: What's your speciality, and what's your "FizzBuzz" equivalent?
When !E(y,z), then also !E(z,y) (because symmetry). Also, E(y,x).

Thus !E(x,z), because E(y,x) and E(x,z) would imply E(y,z), which is false.

sauerbraten··on Show HN: I built this website to help people with hashtags. Hope you'll enjoy it
I thought this would look for words in your text that make for a good hashtag, e.g. converting "you only live once" to "#yolo", and make hashtags from nouns but not verbs and commonly used words. Unfortunately it seems to just put a "#" in front of every word, which (for me) isn't even worth it to go to that website, type my text, copy it over to twitter/instagram, paste it, then send it.
sauerbraten··on Show HN: Example implementation of Mozilla's persona and Go server
Not really. Memory would only be leaked if there really was an error and rawResp was still nil. Since this usually doesn't happen (at least it never happened to me), you probably wouldn't even have noticed this bug.
sauerbraten··on Show HN: Example implementation of Mozilla's persona and Go server
You're right. Fixed it, thanks!
sauerbraten··on Show HN: Example implementation of Mozilla's persona and Go server
Yeah, I worded it differently when I submitted it to /r/golang: Example of using Mozilla's persona with Go
sauerbraten··on My open source API client was taken down by a phony DMCA complaint
Do you know about the tinysong API?

http://tinysong.com/api

It provides only basic search functions of course, but it is publicly documented and I'm sure Grooveshark can't complain if you use it. I wrote a Go package for it years ago (literally, 2010 I think) and it still works fine. You get tinysong.com shortlinks, which lead to the song on Grooveshark.

sauerbraten··on Why Go?
Shameless plug: I wrote a package that exposes a CRUD JSON API on top of a backend interface ("Storage") which you implement yourself; so if your API fits the CRUD principle it could be worth to look at:

https://github.com/sauerbraten/crudapi

You could also use it to implement CRUD parts of your API and define your own handlers for more complex API parts.

sauerbraten··on Show HN: Napster.fm, Napster reimagined for the modern Web
I get this blue ball spinning and spinning and nothing happens... Chrome 26.0.1410.63 on Ubuntu 12.04.2.

Also, the name is not really fitting.

sauerbraten··on Minimalist RESTful CRUD API with flexible storage in Go
Note: I'm not trying to convince anyone to use it, but rather am looking for feedback. It works as documented, but the source code feels a bit clumsy, especially the handler's declarations.
sauerbraten··on JSON Editor Online
On Github there is a link to the Chrome App:https://chrome.google.com/webstore/detail/json-editor/lhkmoh...
sauerbraten··on JSON Editor Online
My go-to site for this kind of thing: http://json.parser.online.fr/

It updates live and checks for validity, too.

sauerbraten··on New Youtube Layout?
Their blog post: http://youtube-global.blogspot.de/
Page 1 of 2Next →