Reclusive Engineer Is Plotting the Death of Blockchain - <AUTHOR> https://www.forbes.com/sites/parmyolson/2019/01/09/this-hermitic-engineer-is-plotting-the-death-of-blockchain/#5d945b6f378e <comment><USER2> Meanwhile, a Mad Reclusive Engineer is Plotting the Blockchain of Death.

</comment><comment><USER3> Good luck to this guy, but it seems every solution to a blockchain scaling problem is ultimately the creation of a blockchain decentralization problem, and vice versa.

<comment><USER4> I suspect that sentence would remain true even if you took the word blockchain out of it and replaced it with any network paradigm that is intended to operate on a global scale. The speed of light becomes a hard ceiling very quickly, and the only ways to get around this are to have a non global network, submit to the realpolitik of limited domain centralization (sharding) and the risk of unaccountable subjective influence it brings, or settle for a glacial transaction rate.

<comment><AUTHOR> Here's kind of how they deal with it from their FAQ

>To allow high scalability a Tempo ledger is split into a very large shard space, allowing a huge degree of concurrency. To avoid a double spend across any of the shards, the shard a wallet lives on is determined by its public key. This makes sure that any spend from a wallet will always start on the same shard. When combined with the logical clocks and gossip, this Tempo to always find the total ordering of related events, allowing double spends to be quickly detected and ignored.

<comment><USER4> I don't think this actually addresses the problem at all unfortunately, as a gossip protocol that has to flood a global network is going to require, sooner or later the affirmation or rejection of a truth value from all nodes in that network, and it is the accumulation of latency between all of those nodes that becomes the upper bound on transaction frequency.

To have full decentralization you must not bypass, obscure or exclude any cohort of nodes from having a proportionally fair influence over the settlement of a common shared truth value, and this means you run smack into hard limit of geography-scoped cumulative latency as a scalability dead end in one direction, and decentralization dead end in the other.

There's a reason why high frequency trading shops have all settled on the same solution to their own (far simpler) latency-scaling network dilemma, which is to house their nodes as close as geometrically possible to the settlement forum. This is the terminal stability state toward which any purportedly decentralized truth settlement network will progress given enough time, as the people, er, "actors" with the best geography are fated to win the latency leverage race and with this advantage, come to control the definition of in- network truth values.</comment></comment></comment></comment>


Ask HN: Most interesting cyber attack that you faced in your career? - <AUTHOR> I spent most of today alleviating a cyber attack on one of the sites of our clients, which was attacked by a Chinese botnet to send spam emails. It was nothing extraordinarily clever and probably a result of some automated crawler looking for vulnerabilities.
But it was a very interesting thing to work on and resolve eventually. It got me thinking about other people's experiences with cyber attacks. Some interesting stories and experiences to share?
What was the most interesting cyber attack that you dealt with in your career? <comment><USER2> This one is not that interesting from a technical point of view, but it was funny to me at the time. As best as I can recall …

It was 2003 and I was working on various test servers for a client. A new to me (old junky box in truth) server was put in my office area. A few days later people (only a couple of us there at a time) were complaining about the internet speed and if I was having any issues. I didn't notice anything, yahoo seemed to open up quick enough.

I was not a networking guy. However, I got to noticing a lot of traffic on the network. People kept complaining about speed issues during the week. The Internet was, now that I think about it, a little sloooowwww. That blinky nic light on that server sure looks busy! Whoa!!! It is infected with the Code Red II or Slammer/Saphire worm!

Opps!

Unplugged. Everything okay now.

</comment><comment><USER3> Pretty standard in the world of VoIP these days, really, but at the time I was new to the technology and the feeling I got when 6 different call centers with a combined 120 agents called me within 5 minutes to complain will always make my stomache turn...

In short, about 10 years ago, I hosted slightly cumstomised instances of something called ViciDial. It's call center software. I neglected to implement DOS protection. And a botnet started trying to brute force REGISTERs to the SIP service. It completely clogged up the measly 100Mb pipe I was renting out of the data center.

I had no KVM. No remote reboot. No external firewall. Stupid, stupid - stupid!

I just sat there for 2 hours until they finally finished.

..ugh</comment>


Apple decides Notification Center buttons are now off limits - <AUTHOR> http://9to5mac.com/2014/12/02/drafts-widget/

<comment><USER2> Funny, I haven't heard anything about Evernote being asked to remove their widget buttons.[1]

I wonder if this is a case of the Today view being so new that there's not agreement between the App Store overlords on what's acceptable.

[1] [http://i.imgur.com/a5udgxi.png](http://i.imgur.com/a5udgxi.png)</comment>


Apple Needs to Quit iAd - <AUTHOR> http://matthewpalmer.net/blog/2014/01/20/apple-needs-to-quit-iads/

<comment><USER2> I agree with the point philosophically but a lot of recent data suggests that it's getting harder and harder to get consumers to pay for apps and the alternatives are limited today with ads being a well understood model to support developers.

What has been working well has been in-app purchases so I wonder if we will witness a faster move away from banner ads to having limited versions of apps that have unlockable feature sets.</comment>


Stack Overflow Survey 2012 - <AUTHOR> https://www.surveymonkey.com/sr.aspx?sm=vU4rF_2bPVQaftSo1s69bGGbvMPXp7ktcfSHiDFP_2bM5qw_3d

<comment><USER2> Judging from those results I think that the original question was more "what if" rather than "what is" - particularly in the salary area.

In 10 years here in the Washington DC area I've never seen salaries that high, or employers that can actually deliver that.</comment>


JFK Displays Actual Wait Times Using Beacons That Monitor Mobile Phones - <AUTHOR> http://www.blipsystems.com/jfk-displays-actual-wait-times-using-beacons-that-monitor-mobile-phones/ <comment><USER2> _When a device passes the beacons, its non-personal unique ID—called a MAC address—is recorded, encrypted and time-stamped._

Blip, you make me laugh. You know this will raise privacy concerns and say the sweet nothings that placate the general public, but inspire no confidence in people who know what those words mean.

I'm not here to say that as a JFK traveler I'm unhappy with the privacy considerations. I just want to point out you're pretending your design is good on privacy when simple tweaks would show the security minded you gave half a shit. I don't mind this monitoring if it is limited to the uses described, your maneuvering simply makes me giggle.

A MAC may not be in whatever bucket you're calling "personal" but is certainly more personal than "non-personal" implies. Encryption is effectively a "we're doing it right" buzzword to the general public. What are your authorized uses for the data? What's your KMI? What data minimization techniques are employed? Do you purge old records? Replace the MAC with an identifier that can't be tied back to MAC once the target has left the line? Hash MACs on entry in a way that is both time-costly to bruteforce and results in a different hash every day?

<comment><USER3> Yeah that same line made me laugh a bit as well. "Your non-identifying, SUPER personal, burned onto your phones hardware, is never going to change Mac Address is recorded as you walk by."

I think the idea is a great one, it's unfortunate there isn't a better way (that I can think of atm) to do it, or like you said just some transparency on what they do with it. As simple as: "At the end of each day the encrypted mac addresses are completely erased from our system."

Seems like they do keep the info though, it says the Cincinnati airport kept it and used it for data analysis. In the end, I think this kind of thing most people will be okay with foregoing a bit of privacy for.

Edit: Interesting article on mobile MAC addresses down the comments: [https://news.ycombinator.com/item?id=10097882#up_10098108](https://news.ycombinator.com/item?id=10097882#up_10098108)

<comment><USER4> I work in the traffic industry and over the last 8 years I have seen the rise of WIFI and Bluetooth journey time monitoring kit and after looking at every solution, I have found that the method of "encrypting" the data has always been just a MD5 hash, or SHA if you are lucky. With with result Hash just been http'ed over to a server on the internet. This usually leads to to question, "OK, so I can just hash the victims MAC address and the look for that in the data stream to find out where the person is instead of just using the MAC directly?" The same is done for ANPR based systems. The word "encrypted" seems to be added to some how make it secure without the solution being secure.

</comment></comment></comment><comment><USER5> Nitpick: these are not "beacons", they are "sensors". The product page linked from the article doesn't even contain word "beacon". Beacons are unidirectional. But, beacons are hot right now, which presumably the author sought to capitalize on.

</comment><comment><USER6> Awesome, this kind of technology should be used in ALL waiting lines. I read that the average person spends months of their lives just waiting in lines. This is ridiculous and should be fixed. Every store should have an average waiting time and they should try to minimize it.

</comment><comment><USER7> Of what use is this information to the people standing in line? "Oh, it's 30 minutes. I guess I'll hurry."

<comment><USER8> In Austin's airport there are several security lines that you can choose from. Each line shows its average wait time as well as the average wait time for the other lines. It's helpful to be able to see that the lines closest to you is 20 minutes but the line just down the terminal is only 5 minutes.

<comment><USER9> I love that feature. It's also incredible to me how many people either ignore it or don't know it's there.

<comment><USER10> I have never noticed it before Where is the wait time information at Bergstrom?

<comment><USER9> Sort of at the front of the security line. Right before you get to the area where you load up the conveyor belt. It is visible from the back of the line.

</comment></comment></comment></comment></comment><comment><USER11> I wonder how long before they can do the same with cameras? A bit of computer vision and you have more complete data... Not sure if there is still need for better completeness though.

<comment><USER6> Should be quite easy to implement, actually. Some stores have this kind of technology to track traffic. I think the problem is installing the cameras and the software, but that's trivial for an airport.

</comment></comment><comment><USER12> I am just curious. Wouldn't it be more easier to do this with specific devices than using the phones?

Each passenger can be given a smart card along with the boarding pass (or embedded in the boarding pass). The sensors could merely check for the smart card at certain points and determine how long it took for the passenger to clear security, etc. The airline can then collect the smart card back just before boarding when they scan the boarding pass. Seems like a simple solution that would work without much privacy concerns.

<comment><USER13> I've seen this done in airports before, only using a plain laminated card that you carry through the line - the low-tech solution. The card was used by the TSA to internally track wait times

<comment><USER14> They used to do this at theme parks as well

<comment><USER15> Disneyland in Anaheim still does. They use it to update the wait time signs at the entrance to each ride and, just recently, their official wait time mobile app.

</comment></comment></comment></comment><comment><USER16> From [http://www.blipsystems.com/indoor- sensor/](http://www.blipsystems.com/indoor-sensor/):

> When a device passes the sensors, its non-personal unique ID, called a MAC > address, is recorded, encrypted and time-stamped. By re-identifying the > device from multiple sensors, travel times, average speeds, dwell times and > movement patterns become available.

Aren't MAC addresses spoofed on most phones now?! I didn't expect a system like that to still be usable.

<comment><USER17> Even if spoofed, a MAC has to be (locally) unique or else you run into all kinds of network issues.

As for spoofed on phones, maybe if you have root. But i doubt it comes spoofed out of the box (at least i have never heard of such a thing).

<comment><USER18> As of last year iOS devices do randomize their MAC address when polling for nearby WiFi, specifically to foil this kind of tracking. Here's an interesting breakdown of what is actually happening: [http://blog.airtightnetworks.com/ios8-mac-randomization- anal...](http://blog.airtightnetworks.com/ios8-mac-randomization-analyzed/)

<comment><USER19> Nice link! From what it describes, I don't think this will be too much of a problem for a tracking system like this. The randomized MAC is only changed when the phone is put to sleep for at least 120 seconds. It stays constant while sleeping, or while active. So if you're on your phone from start to finish (as a lot of people do) or if you leave it in your pocket from start to finish, you'll be tracked fine. Only if you use your phone, put it to sleep, and leave it asleep for at least two minutes all while in the line will you defeat this. And while that's certainly something people will do, plenty of people won't, so the tracking can use those.

This all sounds pretty good to me. Short-term tracking like this is useful and not very invasive. The randomization will still defeat long-term invasive tracking, like a store recognizing you from past visits and building up a database of your individual activity from that.

</comment></comment></comment></comment><comment><USER20> Another simple thing that could be done to increase efficiency is have notices upstream in the security line instructing people to remove their shoes / belts and store their personal items like phones before they get to the conveyor belt used to feed items into the x-ray baggage scanner (assuming this is still a relevant bottleneck). A lot of time is needlessly wasted by people who start this process when they first hit the front of the security line.

<comment><USER21> I'm not going to take my shoes of in a common area until I absolutely have to. I think it's a stupid law anyway, and my not disrobing early is a form of protest at the indignity.

</comment></comment><comment><USER22> Serious question: if there is a 16 minute queue for "security", why wouldn't a potential terrorist just wheel up a carry on sized bomb and detonate it in the middle of the "security" line? Is this something that the TSA addresses (I assume not), or do they just ignore the possibility? All they've done is move the soft target further out.

<comment><USER23> I think they're concern is not foremost for the safety of the passengers. The main concern is airplanes going into buildings. Of course, this is definitely an example of fighting the last war.

On a separate note, the TSA really pisses me off. Consider that UPS saves millions by not taking left turns. Removing or adding very small inefficiencies at a very large scale has tremendous cost implications. I don't think these security lines add much security and I think they do that task at a much higher cost than most people think.

<comment><USER24> I agree that planes going into buildings is the major security concern, but we fixed it. We've reinforced the cockpit doors and we've taught passengers not to cooperate with hijackers (the latter we managed within hours of the first attack)

<comment><USER25> Plus panic buttons & guns in the cockpit, new procedures for aircraft leaving their scheduled route, and passenger's reaction to a hijacking (e.g. one "bad guy" with a switchblade is nothing against 300 people who fear NOT doing anything will endanger their lives).

<comment><USER15> Pilots have a panic button. It's called squawking code 7500. Alerts ATC that there is a hijacking situation (7700 is general emergency.) Guns in airplanes are a bad idea for, well, quite a few reasons.

</comment></comment></comment></comment></comment><comment><USER26> One of the photos shows the system in use at the DHS immigration line. Aren't there notices all over this place telling travelers that cellphone use is strictly prohibited before passing the checkpoint? It seems strange that the airport relies on people breaking the law to provide better service...

</comment><comment> a-dub Good. I suspect that many people aren't aware that most smartphones in common/default configurations leak a unique identifier that can be passively sensed and monitored. Products like this will help raise awareness as to how privacy invasive simple consumer devices have become.

</comment><comment><USER27> I hope it didn't cost more than hiring extra people to get the mega-lines through faster.

<comment><USER28> That definitely goes against my hacker instincts where if I can automate a daily task with the amount of time that it would take me to do it in a few days, I go ahead and automate it.

<comment><USER6> Yep, I think the same way. I always prefer to spend a lot of time upfront on something and automate it instead of doing it over and over later. I try to avoid repetitive tasks as much as I possibly can.

</comment></comment></comment><comment><USER29> London Luton was displaying similar wait times when I traveled through it last week, and I was wondering how they did it. I thought they might be doing some kind of face recognition using the cameras at entry/exit to the hall.

</comment><comment><USER30> Perhaps, just perhaps... they should be spending money on additional stations to NOT have lines in the first place?

You know, fight the cause rather than the symptom :-)

<comment><USER31> They will only spend enough money on staffing, to keep customer frustration just below the boiling point. You see that in every industry, not just at the airport. Although in industries with little or no competition (I'm looking at you, USPS), I would say have even less incentive to care about customer satisfaction.

</comment></comment><comment><USER32> Based on the headline, I thought they were displaying the queue time on monitors held by life-sized mannikins of the former President.

Read the article, was disappointed. It's still interesting tech though.</comment>


Sorry state of dynamic libraries on Linux - <AUTHOR> http://www.macieira.org/blog/2012/01/sorry-state-of-dynamic-libraries-on-linux <comment><USER2> _All this for the possibility of interposition? Yes, it seems so. The impact is there for this little-known and little-used feature. Instead of optimising for the common-case scenario where the symbols are not overridden, the ABI optimises for the corner case._

Using LD_PRELOAD isn't so rare and strange that you can propose throwing it out without quantifying its performance cost. I can't recall offhand why I needed it (I would guess Valgrind or Massif) but I've used it several times as a developer. What exactly is the payoff for giving it up? It can't be bigger than the current performance difference between statically and dynamically linked executables, can it?

<comment><USER3> > All this for the possibility of interposition? Yes, it seems so. The impact > is there for this little-known and little-used feature. Instead of > optimising for the common-case scenario where the symbols are not > overridden, the ABI optimises for the corner case.

It also looks like PIE+PIC is required if you want a secure system with ASLR: <[http://blog.flameeyes.eu/2009/11/02/the-pie-is-not- exactly-a...](http://blog.flameeyes.eu/2009/11/02/the-pie-is-not-exactly-a- lie>).

Flameeyes (Gentoo dev) has sent patches to all the main library developer that make sure only the necessary number of symbols is exposed and as much data as possible is marked as read-only. I think this effort is more valuable than proposing a very unlikely ABI change.

<comment><USER4> Of course, a bunch of this work is sabotaged by stupid default `LDFLAGS` you get if you use `pkg-config` and some package (like `gmodule`) throws random stuff in there like `-Wl,--export-dynamic` which is just totally unnecessary for at least 99% of executables which only ever used `gmodule` indirectly in the first place...

</comment></comment></comment><comment><USER5> I started writing a comment before the site went down (hah, I knew it would be WordPress) and now I'll probably forget to post it there so I'll just post it here.

Is the address of externalFunction that is stored in the GOT really resolved to the address of the stub and not the final real address of the function? Because it has to be for data (or code simply wouldn't work), and I don't see why function symbols would be any different.

Also C and C++ say that a function has the same address in all translation units, so comparing the address ought to match regardless of PIC or shared libraries or symbol overriding, and if they don't it's probably a bug in the compiler/linker (or you're using a nonstandard option that breaks this guarantee, e.g. symbol hiding.) And actually this should require that the address in the GOT is the final address of the function.

By the way, any CPU that has static destination branch prediction will predict as well for a double indirect call as a single indirect call (assuming of course the addresses don't change.) The cost is taking up two entries in the branch prediction tables, another L1I cacheline for the stub, and a hiccup in instruction decoding which may or may not have a real effect depending on the code before and after.

> If there's a reason for getting the address indirectly like this, I have yet > to find it.

It should be because of PIC, and the fact that PC-relative addressing on x86_64 has only ±2GB displacement, so if your final binary is over 2GB the linker could fail to put the symbol within range of the offset and fail. Whereas for calls the linker can just insert a stub if this happens and noone's the wiser. Disabling PIC results in "movq $externalFunction, externalVariable(%rip)" for me.

But -mcmodel=small is the default, which should contradict this explanation...

EDIT: so I just tried a test and it appears the GOT on Linux really does contain the address of the stub. _what the fuck_

On OS X it contains the real address.

<comment><USER6> _C and C++ say that a function has the same address in all translation units_

Until perhaps very recently, the ISO C and C++ standards didn't actually support dynamic linking. (They didn't officially support multithread concurrency either but flexibility is one of those languages' strengths).

 _if your final binary is over 2GB the linker could fail to put the symbol within range of the offset and fail_

I have had to code around this limitation too but it didn't turn out to be that hard in practice.

How about we optimize for the case where the final binary is 2GB or smaller? :-)

<comment><USER5> > Until perhaps very recently, the ISO C and C++ standards didn't actually > support dynamic linking. (They didn't officially support multithread > concurrency either but flexibility is one of those languages' strengths).

How so? They certainly didn't mention it but they shouldn't have to - describing the final linked behaviour is enough and means that whether it was statically or dynamically linked doesn't matter if it produces the same run- time behaviour. Which resulted in a huge mess in the linker for C++.

> How about we optimize for the case where the final binary is 2GB or smaller? > :-)

I agree, but compilers should be standards-compliant by default and any such optimizations should be under non-default flags (e.g. -fvisibility-inlines- hidden). But -mcmodel=small is already the default...

<comment><USER6> I'd seen references to possible standards issues with dynamic linking, but hadn't really thought about it until you pointed it out: taking the address of a function or data object with linkage is no longer naturally returns the same address in different translation units.

Believe it or not, in C++ a pointer to an object or function is valid as a non-type template parameter. Heck, I bet you can even partially specialize on it.

</comment></comment></comment></comment><comment><USER7> Website down, looks like reddit pumelled his server before HN did.

Google cache: [http://webcache.googleusercontent.com/search?q=cache:http://...](http://webcache.googleusercontent.com/search?q=cache:http://www.macieira.org/blog/2012/01/sorry- state-of-dynamic-libraries-on-linux/&strip=1)

G+ discussion with the author: [https://plus.google.com/108138837678270193032/posts/No8T7VLo...](https://plus.google.com/108138837678270193032/posts/No8T7VLoF33)

</comment><comment><USER8> While we're complaining about the sorry state of Linux, something it's desperately lacking (for those of us who ship binary-only libraries and executables) is an equivalent of Windows's PDBs or OS X's dSYMs for post- mortem debugging without bloating the shipping binaries.

<comment><USER9> hi. linux does have this.

you just strip the debug symbols out (and put them somewhere safe). then write a .gnu_debuglink section to the stripped ELF binary with a CRC that matches the stripped symbols.

once something bad happens: you just take the core dump, the symbols you have tucked away, and you are able to debug just fine.

<comment><USER8> Thanks to you and others for jumping in and pointing this out! There's nothing better than being corrected when it means learning something new and solving a long-standing problem.

</comment></comment></comment><comment><USER10> For an interesting use of RPATH headers to make portable Linux binaries (and shared libraries) have a look at this script that I used to build Python 2.7.2 and a whole pile of 3rd party libraries <https://github.com/wavetossed/pybuild>

I think that things like RPATH and LD_PRELOAD are exactly what shared libraries should be doing. The reason for shared libraries in the modern age, is increased flexibility.

</comment><comment><USER11> I _think_ it was here (on HN) that I read a comment that suggested shared libs in Unix originated at Sun Microsystems, originating due to some politics in their work w/ the X Window System (iirc). I've searched for that story since, but not found it -- I'm guessing there may be somebody reading this story who may know what I'm talking about. Retell the story?</comment>


Show HN: Axis - a React.js multiplayer math game - <AUTHOR> http://www.axisthegame.com

<comment><USER2> It would be nice to have a beginner version where we can choose functions from a menu and get an idea of what the curve looks like. Then, once I am back up to speed I can play for real.

<comment><USER3> If you have OS X, you could probably pop open Grapher and try a few curves there. But if you don't, I'm sure there's some web app for visualising curves as well.

</comment></comment><comment><USER4> Wrote a script which you can use to kill all your opponents in one turn.

[http://pastebin.com/FYXcdmpi](http://pastebin.com/FYXcdmpi)

:p

\- Shariq

<comment><USER5> In the general case that is not possible. If there is a block vertically in between of two opponents you can not destroy both in one turn.

</comment></comment><comment><USER6> Fantastic. Awesome game!

Few suggestions:

1\. Show me a ghost path for the previously fired missile

2\. Have a library of functions to choose from with an idea of what the curve looks like

3\. Reduce the waiting time.

or add some documentation in your readme / some contribution notes and I'll be glad to send in PRs

<comment><USER7> 4\. Add a 'team' option

Great game!

</comment></comment><comment><USER8> Just played this and it is great. However the other player (in the chat) was saying that he could not fire sometimes.

And later on I was also unable to both post messages and to use the FIRE button. Never recovered. Server problem perhaps?

In any case I will be bookmarking this. This would work wonders to explain math :)

<comment><USER9> You might have been playing with me. I hit you with an exponential function?

I think the game crashed when I hit one of your locations.

<comment><USER8> ah yes! :) Sounds like it was you.

Oh by the way. I think I had 2 players and you had one because you could have hit your other one since the beginning. After you hit one of mine, it was disabled and I was just with one playable Player left.

<comment><USER9> Yes, it took me a while to figure it out!

</comment></comment></comment></comment><comment><USER10> This is awesome. I wish turns were simultaneous, so that there was less time spent waiting.

</comment><comment><AUTHOR> source here: [https://github.com/igul222/Axis](https://github.com/igul222/Axis)

<comment><USER11> Should probably put a license, readme and maybe some contrib guidelines up.

</comment></comment><comment><USER5> I was surprised to see that many people didn't know how to define a step function. One way to do it is: size_of_jump*max(0, sign(x-position_of_jump)). Also, max(0, sign(x-position)) allows you to switch on and off other parts of your function like a high frequency sine that can spray an area.

<comment><USER12> Yeah, step functions really break this. I think I was in a game with you or some else with the same general idea, they won on the very first turn with the sine wave trick.

<comment><USER13> Agreed, functions should be continuous and no step functions.

<comment><USER5> Even heavily restricting the function to only use addition and multiplication doesn't solve the problem.

<comment><USER13> But it almost impossible to write a polynomial in under 60 seconds without any tools, that follows the desired path.

<comment><USER5> I assume it to be not doable but that in no way fixes the problem that its easy to write a tool that plays perfectly.

<comment><USER13> There are simple ways to make that very hard. The first one is to remove copy paste.

<comment><USER5> You can just analyze the graphical output of the browser and hence make your hack useless. The underlying problem of this game is just too easy to solve.

<comment><USER5> @readerrrr: I'm commenting here because HN doesn't let me comment your comment.

> You can always make the game itself harder on top of all the anti-bot > tricks.

You are implying two things here. Firstly, that its' always possible to make the game harder and, secondly, that anti-bot tricks can solve this issue.

I'm skeptical about the first part and strongly disagree with the second.

In regard to the first part I'd say that it's hard to make the game harder without making it unenjoyably to play. How'd you integrate a sufficient amount of complexity into this game without ruining the fun? That it's in principle possible shows Go. Interesting problem.

In regard to the second part I say that it's just adding (futile) noise and not tackling the fundamental problem. The player has to see at least the map. He then draws a graph in a program that produces a function that has nearly that graph and gives a string defining that function. The user just copy and pastes it into the game.

<comment><USER13> Copy paste is disabled remember...

As for the rest, that is up to the developer with more resources than his opponents.

<comment><USER5> > Copy paste is disabled remember...

s/The user just copy and pastes it into the game./The user emulates his keyboard typing that string.

I don't see the point in this. It's just adding noise instead of talking about the real problem.

> As for the rest, that is up to the developer with more resources than his > opponents.

If it were like that, I'd be happy. Right now it's trivial to completely solve the game.

Even though the game is not suited for competitive gaming it is great to teach some math.

<comment><USER13> Just impose rules that are trivial for humans to solve reliably and not for computers.

<comment><USER5> Can you give an example for such a rule?

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> Very nice concept. Reminds me a lot of my TI-83 graph calculator days with a small dose of Scorched Earth :).

<comment><USER5> Yeah. I loved playing with the graph function. I felt so powerful to define curves and can see them being plotted.

</comment></comment><comment><USER3> Looks like it's gone :( but it was great fun

<comment><USER13> It is crashing all the time, it should be back soon.

Even with all that I still keep coming back.

</comment></comment><comment><USER13> Really great idea, too bad it freezes almost every game.

I think it just died...

</comment><comment><USER15> Good job. I played this game way more than I should have last night.

</comment><comment><USER16> Great concept, but it takes too long to plan shots. It means that people drop out of games quickly.

Having a library of functions available would definitely help with this.

</comment><comment><USER17> Someone just rocked me with a step function. I'm intrigued.

<comment><USER18> I am not sure if this is a step function, but I saw someone pretty much do an octagon shape to hit someone. How?

<comment><USER5> (x+1) * max(0, sign(x)) * (1-max(0, sign(x-1/sqrt(2)))) + (1+1/sqrt(2)) * (1-max(0, sign(x-1/sqrt(2)-1))) * max(0, sign(x-1/sqrt(2))) + (-x+sqrt(2)+2) * max(0, sign(x-1/sqrt(2)-1)) * (1-max(0, sign(x-sqrt(2)-1)))

</comment></comment></comment><comment><USER19> As odd as it sounds, I think this game caused my Mac to run out of memory.

</comment><comment><USER20> Looks great but neither buttons start a game for me.

</comment><comment><USER21> It appears some of my functions just vanish?

</comment><comment><USER22> Is there a link to the source code?

</comment><comment><USER23> An error occurred in the application and your page could not be served. Please try again in a few moments.

</comment><comment><AUTHOR> just added function previews to make playing easier!

<comment><USER9> Remove it!

At the very least give us the option to create games with/without previews.

</comment></comment><comment><USER24> This looks awesome!

</comment><comment><USER25> awesome!

</comment><comment><USER26> and it's down</comment>


The Traffic Guru - <AUTHOR> http://www.wilsoncenter.org/index.cfm?fuseaction=wq.essay&essay_id=462572

<comment><USER2> If you found this article interesting, I heartily recommend the author's book 'Traffic: Why We Drive the Way We Do' [1]. Most of this article is pretty much an excerpt of one chapter, but the book goes in a lot of directions.

[1]: [http://www.amazon.com/Traffic-Drive-What-Says- About/dp/03072...](http://www.amazon.com/Traffic-Drive-What-Says- About/dp/0307264785/ref=pd_bbs_1?ie=UTF8&s=books&qid=1219712548&sr=8-1)</comment>


Oakland and SF sue five oil companies for damages from rising seas - <AUTHOR> https://www.scientificamerican.com/article/cities-sue-big-oil-for-damages-from-rising-seas/ <comment><USER2> This is pretty classic nuisance extortion through the courts. What were the oil companies meant to do in order to avoid this lawsuit? Shut down their entire businesses? So that instead Oakland could sue the new oil companies that would inevitably spring up, since our entire civilization still runs on the stuff?

Also, though the article doesn't say it outright, it looks as if there's not even given any evidence of current damages, just hundred-year-out projections. (And the record of long-term predictions in this domain is certainly not precise enough to base legal arguments on.) So they're meant to pay now for hypothetical damages that may happen later, as punishment for providing the energy that runs our whole society. Okay?

<comment><USER3> This law suit is absolutely ridiculous. What's next, let's sue farmers for farming cows that belch methane into the atmosphere? Or how about we sue all parents for creating people, since people create so much environmental damage. No matter where you stand on the policy of climate change, this law suit sets a dangerous presedent: Using the courts to afflict political change that should be done through other means.

I'm all for reducing climate change. But there are ways to do that. First of all, get rid of all the oil subsidies! That's the first thing that should be done. Then, tax the oil industry and others pollutants proportionately to the amount of climate change produced, perhaps measured by the amount of resultant Co2.

<comment><USER4> I'm just here to play devils advocate, I don't know how I feel about this suite.

That said, oil companies have known about the effects of climate change for a while, have known that their products cause it, and then with that knowledge funded climate change disinformation campaigns to persuade public policy.

You can liken it to a drug company knowing about the effects of thermeldahyde on pregnant women, but still pushing it as a cure for morning sickness.

<comment><USER5> Yes, but the cities of Oakland and SF use fossil fuels and energy made from fossil fuels, correct? The harm isn't in extracting the oil from the ground, it's in burning it. There are a whole host of people guilty of that, including everyone who puts fuel into their internal combustion powered car and turns the thing on.

<comment><USER4> Yes, however the confounding factor is that the large oil companies have spent a lot of money convincing people that these actions are harmless, despite internal data saying otherwise. In a world where these companies kept their mouth shut about climate research, then I don't see how they'd be at fault.

<comment><USER6> Over a period of how many years? If it's been, say 2-5 years, is that enough time for us to say "they've known and done nothing about it" effectively? Or are we just whining because we like to bitch?

<comment><USER4> Exxon has known since 1977[1].

[1][https://www.scientificamerican.com/article/exxon-knew- about-...](https://www.scientificamerican.com/article/exxon-knew-about- climate-change-almost-40-years-ago/)

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Up until now, oil and fossil fuels have done way, way more good than harm to humans. They have enabled farming techniques that can produce food for billions of people. They have enabled global distribution of goods. They have enabled mass commercial air travel. They have enabled the greatest lifting of people out of poverty in human history. Abundant, reliable electricity most often powered by fossil fuels enabled the digital revolution.

This suit is very disingenuous and nothing but political grandstanding.

<comment><USER8> Oil companies have been compensated for those benefits by people paying for oil. They have largely not had to pay for those harms. Allowing them to be sued brings their compensation more in line with what it should be.

</comment></comment><comment><USER9> Shouldn't the cities be suing individuals who use the fuels? The oil companies are merely manufacturing a product that can be used, it's the responsibility of end-users for the destruction they cause.

The equivalent would be states suing gun companies for manufacturing handguns that are used in crimes, even though those same guns are used by police officers to uphold the law.

Don't energy companies produce energy resources that help impoverished people obtain clean drinking water and protect against environmental threats?

<comment><USER10> At least in the case of Exxon, the company actively engaged in a misinformation campaign regarding climate change and its link to oil. This is more similar to how the tobacco companies operated in regards to cancer.

<comment><USER11> Interestingly, once the states started getting large payments from the tobacco company settlement, they became interested in the long-term health of those companies.

</comment></comment></comment><comment><USER12> And yet, there has been no increase in the rate of sea level rise for as long as records have been kept.

Here's the sea level data for San Francisco, CA since Abraham Lincoln was President:

[https://tidesandcurrents.noaa.gov/sltrends/sltrends_station....](https://tidesandcurrents.noaa.gov/sltrends/sltrends_station.shtml?stnid=9414290)

Nice consistent trend going back 167 years. 1.94mm/year, +/\- 0.19mm, for as long as we have been keeping records.

There is NO increase in the rate of sea level rise here, or anywhere in the US, that is above long-run trends going back to the start of record keeping. A quick glance at official government data will prove it. In fact, many West Coast stations (as well as Hawaii), show a decrease in sea level, due to continental rebound and volcanic rise.

<comment><USER13> No increase in the rate does not mean no increase. Clearly there is an increase. You want a hockey stick? Wait for Greenland to melt. You may well live to see that.

<comment><USER14> Obviously there is an increase - but I think OPs point is that the steady increase has been going on since before we really burned fossil fuels. Wouldn't you expect an increase in the rate if our CO2 production was having a large effect on ocean levels?

<comment><comment>~

edit: In response to Jtsummers below, since HN thinks posting more than 3 times per day is too quick:

>If the radius of the balloon increases at a constant rate, the volume of the balloon is increasing at a much greater rate (specifically, proportional to the cube of the increase in radius).

Sure, but we're talking about a numerical value which moved ~20cm over the entire measurement time, compared to the balloon which is 1,270,000,000 cm in diameter. The effects that you mentioned are entirely negligible and probably even beyond the resolution of our measurements.

<comment><USER15> Click the time next to my post and you can post a reply to my comment directly even if the _reply_ link doesn't appear.

The balloon was strictly meant as an analogy, but it is illustrative and establishes the upper bound on the rate of increase of water volume.

Regardless of that, showing a linear increase in sea level (constant rate) still necessarily implies a non-constant increase in water volume due to the shape of the "container" for the oceans. Our oceans are not bounded by sheer walls, so it must also be increasing in surface area (spread over land). If it is increasing in surface area and _still_ increasing linearly in sea level [0], then the volume is growing at a super-linear rate. That means each year more water is going into the oceans than the prior year (on average, at least).

[0] One measure from San Francisco, of course, is not enough to demonstrate this as there will be lots of local variations due to many factors.

<comment><USER14> Thanks for the tip - the reply link did appear, but when I tried to submit my message, I got the 'You're posting too fast' page).

I agree with the logic of your statement - it is perfectly sound. My point was that for a large enough balloon and a small enough rate of increase, the effect will "look" linear(e.g. look at the domain [4.1,4.125] of e^x and determine if it is a linear or exponential function), and our instruments (probably) can't even begin to measure for the effects which you propose.

</comment></comment></comment></comment></comment></comment></comment><comment><USER16> The content shows as offline for me, but you can copy-paste the URL in google and view the cache ([https://webcache.googleusercontent.com/search?q=cache:1J0XO4...](https://webcache.googleusercontent.com/search?q=cache:1J0XO4WYGG4J:https://www.scientificamerican.com/article/cities- sue-big-oil-for-damages-from-rising-seas/+&cd=1&hl=fr&ct=clnk&gl=ca))

Two key quotes from the article:

* "The legal complaints also cite an internal Exxon document from 1982. Its authors predicted that global temperatures will rise 3 degrees Celsius before the century ends."

* "The defendants "promoted fossil fuels and fossil fuel products for unlimited use in massive quantities with knowledge of the hazard that such use would create," the San Francisco suit says."

Can't wait for gaz stations to be like cigarette packaging/advertising (in most of the western world except the US): un-branded and with large warnings about the health/environmental consequences.

<comment><USER17> If I were an Exxon exec, I'd be less worried about lawsuits, and more worried about future lynchings by an enraged and suffering world populace. In particular, when a particular kind of person connects the dots between fossil fuels, climate change, and mass migration they're going to flip.

<comment><USER18> Perhaps, but why is it only Exxon's fault, and not everyone who uses any form of energy based on fossil fuels? If things get that bad, I'm guessing the entire industrialized world is going to be blamed.

<comment><USER19> Oakland and SF could start by banning all gasoline, diesel, and jet fuel in their jurisdictions. See how that works out. Can't we just get an international CO2 tax and slowly ratchet it up to the level to stop CO2 in the atmosphere from going up? Exxon wants it. And it looks like China would be on- board (trust but verify). Maybe India too and we are all set.

</comment></comment></comment></comment><comment><USER20> What a waste of taxpayer money. I am all for moving away from fossil fuels, into renewable energy, but this is just ridiculous. The oil enabled the developed world we live in today, without oil we would never get to the point where SF is one of the richest cities on earth. If anything the oil companies should sue the city for a share in revenue.

</comment><comment><USER21> Oil companies do not emit CO2.

Cars, planes, trains do about 35% of it.

Manufacturing most of the rest.

I find this all rather populist, I'm not sure it's the best approach.

<comment><USER22> Oil companies emit CO2. _YOU_ emit CO2. Facts.

</comment></comment><comment><USER23> For such a bold lawsuit I thought a Scientific American article would surely post some trend data about what sort of sea level rises these specific cities faced. What a let down.

</comment><comment><USER24> This is ridiculous case \- lets sue sugar manufacturing for making sugar, which caused us to gain weight and other over weight related problems. \- heck, lets sue the farmer that grew the sugarcane and beet that were used to manufacture sugar.

The lawyers of Oakland and SF don't drive cars? Or travel on planes?

If the intention is to put pressure on the Oil companies to stop lobbying against clean energy - I don't think, this is the right approach.

<comment><USER25> > This is ridiculous case - lets sue sugar manufacturing for making sugar,

Didn't we do exactly that? [https://en.wikipedia.org/wiki/Sugary_drink_tax](https://en.wikipedia.org/wiki/Sugary_drink_tax)

This is also done for other things like having tobacco companies or alcohol companies finance health care and treatment programs.

Actually, for oil companies that is not even new. They usually pay quite a bit to account for the local damage they cause to the environment, so adding global damages as well seems very reasonable.

The only weird thing is why Oakland and SF are suing and not, say the federal government or the UN.

</comment></comment><comment><USER22> This is actually really nice to see. If they can prove that the oil companies were knowingly causing harm, the entire conversation around climate change will shift.

I'm disappointed in the discussion here so far. When did we become a community of "be nice to the big guys"?

</comment><comment><USER26> This seems like an overweight person suing Coca-Cola and Krispy Kreme when they get diabetes.

<comment><USER27> I'm not sure that's a reasonable comparison. If Coke and Krispy Kreme had research 50 years ago that showed the link between their products and diabetes and then funded misinformation and contradictory research for the following decades to convince people otherwise it would seem warranted to sue them?

<comment><USER28> Like this? [https://well.blogs.nytimes.com/2015/08/09/coca-cola-funds- sc...](https://well.blogs.nytimes.com/2015/08/09/coca-cola-funds-scientists- who-shift-blame-for-obesity-away-from-bad-diets/?_r=0)

</comment></comment></comment><comment><USER29> And at the same time the shoulders of the highways in the Bay Area (280 and 101) are literred with trash, the roads in San Francisco have so many potholes that you need an SUV to drive on them, and South of Market you need to be very careful not to step on piles of used syringes that are seeping off homeless encampments. And yet the city of SF is suing oil companies for rising seas. When will this dysfunctional ideologue city government be voted out, if ever?

</comment><comment><USER6> This is such bullsh!t. Suing oil companies while, I'm sure, both Oakland and San Francisco benefitted from their wares for sale. In fact, without them, I'm sure both cities would have fared much worse in the past few decades.

This is a classic example of looking a gift horse in the mouth. Putting regulations on oil companies would benefit all, rather than this frivolous lawsuit which would benefit the two cities ONLY.

</comment><comment><USER30> is this money going to be evenly distributed around the world?

<comment><USER18> Likely it will be used to fund other services in SF that have little to do with climate change.

</comment></comment><comment><USER31> And people say there are too many lawyers. Yet who would be around to file suits like this if we had fewer?

</comment><comment><USER32> And that sound you hear is the oil companies shredding every relevant document before the subpoenas hit.

</comment><comment><USER33> _The defendants "promoted fossil fuels and fossil fuel products for unlimited use in massive quantities with knowledge of the hazard that such use would create,"_

Why not Ford, GM, Honda, Toyota, Boeing...? Hey, I sell gasoline /diesel, one of the many (legally available) fuels, you either buy it or you don't.</comment>


Ask HN: Best forums for remote workers? - <AUTHOR>

I know about weworkremotely by 37signals but I can't find too many forums dedicated to remote work out there. Any hints? <comment><USER2> Here is a link to someone who did a "Top 5":

[http://remotenation.co/blog/top-5-sites-for-finding-a- remote...](http://remotenation.co/blog/top-5-sites-for-finding-a-remote- developer-or-designer-job)

Depending on your skills, you should also be looking at skill-relevant sites (ruby has plenty).

You could also try the freelance websites to find remote gigs, but it's not #exactly# the same having a remote job for a single company when compared to doing freelance work for many companies.

I found this forum:

[http://www.workingnomad.com](http://www.workingnomad.com)

It would be interesting to have some type of remote worker community beyond just a forum, to maybe learn from others experiences and other remote-related things.

<comment><USER2> I made a mistake with the forum. It is actually some guys website about working remotely with a forum attached to it.

Here is the forum link:

[http://www.workingnomad.com/forum/viewforum.php?f=4](http://www.workingnomad.com/forum/viewforum.php?f=4)

</comment></comment><comment><USER3> Are you looking for work or an actual forum to chat like HN?</comment>


The ends of your chromosomes are sensitive to a variety of environmental factors - <AUTHOR> http://arstechnica.com/science/2013/12/caffeine-alcohol-keeps-your-chromosomes-just-right/ <comment><USER2> After working in an agency setting while trying to run several small projects on the side, I can see why work-related stress would turn hair white and bring about countless wrinkles prematurely.

With that said, alcohol may help to a degree, but with the stressors of everyday life it's too easy to get carried away. For awhile I was drinking nearly every night of the week. I would drink in an attempt to forget about the failures of my career and the debts I had taken on as a result. Only to find that those worries were still very realistically there the next day, and I had lost time that would otherwise have been spent working or improving myself, thanks to drinking.

Now, due in-part to meditation, a closer circle of friends and peer supporters, and a lot of reading, I haven't touched more than a single beer in two weeks. And it feels great because it allows me to get more done.

<comment><USER3> Congratulations on this change!

</comment></comment><comment><USER4> The article is misleading. Longer telomeres don't mean longer life. Telomeres in mice are 4 times as long as those found in humans and they are particularly susceptible to damage from oxidative stress.

</comment><comment><USER5> Noting that the experiments described in the article were performed on yeast, can anybody better versed in biology convey a better idea on how applicable to humans these results are?

As described in the article, we both have telomeres, but as far as I know the comparison ends there.

<comment><USER6> Other research has already found an association between caffeine intake and _lower_ incidence of cancer in humans. [http://www.cancerletters.info/article/S0304-3835%2808%290066...](http://www.cancerletters.info/article/S0304-3835%2808%2900667-8/abstract) So the research doesn't seem to transfer at all.

<comment><USER7> Well, this article states that caffeine shortens telomeres, and shortened telomeres are a hallmark of aging. Lengthened telomeres are associated with cancers. This seems to imply that the research done in this article (on yeast) correlates with the research you linked.

</comment></comment></comment><comment><USER8> FTA: "and alcohol (and acetic acid) lengthen [telomeres]."

funny, these findings seem to contradict this study:

"Shortened telomeres in individuals with abuse in alcohol consumption" [http://www.ncbi.nlm.nih.gov/pubmed/21351086](http://www.ncbi.nlm.nih.gov/pubmed/21351086)

</comment><comment><USER9> As someone who's addicted to both, I can't really tell if this revelation is good, bad, or otherwise.

<comment><USER10> Just drink Irish coffee and one will cancel the other's effects.

</comment></comment><comment><USER11> Meditation is seemingly helpful wrt telomerase. [http://www.academia.edu/4326346/The_link_between_mindfulness...](http://www.academia.edu/4326346/The_link_between_mindfulness_self- compassion_and_telomerase_activity_in_psoriasis_Results_from_a_controlled_MBCT_trial)

<comment><USER12> I looked at the study and everyone involved smoked and drank to some extent, and the meditation had some improvement on depression/anxiety/worry all of which are usually blamed for cig / booze use. At least some subjects were likely self medicating themselves and its highly likely the semi-dramatic change in reported attitude would lead to semi-dramatic change in self medication. However booze/cigs use after the experiment was not charted which is highly unfortunate.

It seems highly likely meditation reduces self-medication due to improved mental state, and reduced self medication as per this article study has some direct effect on telomerase. So indirectly it sounds like a believable testable falsifiable hypothesis but its hardly been proven.

<comment><USER11> I may have found the wrong study. I know of a few so I'll go back and see if the others were better.

Edit: better study [http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3057175/#S29titl...](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3057175/#S29title)</comment></comment></comment>


How airlines woo the one per cent - <AUTHOR> http://www.newyorker.com/reporting/2014/04/21/140421fa_fact_owen?currentPage=all

<comment><USER2> A friend who works in one of the airlines told me recently, the story of six family members from middle east traveling all in 1st class, including kids and the nanny. The flight ticket was around $10k per person for the one way trip. Madam was all Hermes, and the nanny was wearing 'mere' Prada and Burberry. Thought it was interesting/funny.

</comment><comment><USER3> Amazing to imagine the kind of people that fly first-class. As someone who works in a startup and isn't rich but comfortable, I don't see why you would pay >$8000 more just for a comfier seat. I'm sure your perceptions change as your money pile gets larger, but I can't think of much that's more wasteful of resources.

<comment><USER4> I hypothesize that once you have more money than you realize you or your next generation will ever be able to spend, you stop looking at things in terms of financial soundness.

Comparatively, an 8k price for a nicer seat is probably like choosing between a walmart brand pasta versus a nicer brand pasta to a millionaire; the price difference just makes no difference to them, just the comfiness of the chairs.

</comment></comment><comment><USER5> What is the point of a visual medium like the web if you are just going to publish a wall of text. For an article dealing with design, having to read descriptions of furnishings rather than see a graphic is painful.</comment>


Newsweek's Statement on the Bitcoin Story - <AUTHOR> http://www.newsweek.com/newsweeks-statement-bitcoin-story-231242

<comment><USER2> So Newsweek "encourages all to be respectful of the privacy and rights of the individuals involved." It might have been nice to consider that before publishing a legible photo of Nakamoto's license plate.

<comment><USER3> It just occurred to me how ridiculous this whole article is...they cite his supposed $400 million Bitcoin stash and then post a photo of his home and license plate. I just pray nobody goes snooping around looking for his (potentially nonexistent) BTC wallet.

</comment></comment><comment><USER4> >We recognized a public interest in establishing some core facts about Bitcoin and better informing those who might invest money in it.

Bullshit. Revealing who Satoshi is doesn't give you one shred of information to help you decide whether or not to invest in Bitcion.

<comment><USER5> There are some values of Satoshi that would make some people change their minds: if it were an NSA operation, or a neo-Nazi group, or Scientologists, or Intellectual Ventures.

Personally, I try pretty hard to not use things created by assholes, even if the things themselves are good. (You can't avoid things made by people with abrasive personalities, but I don't think I regularly use anything made by a genuine asshole.)

<comment><USER6> Linus Torvalds is generally accepted to be pretty abrasive, at least, do you use anything created by him?

I try not to learn anything about any creator whose work I admire, they will unfortunately generally disappoint.

<comment><USER7> abrasive != asshole

The rough tone on lkml (supposedly) reflects the gap between people who want to make something that's nontrivial and used by many people and the smaller number of people who are actually able to do so. Setting yourself up as this kind of gatekeeper means you have to be non-likable towards a lot of people even if you're a perfectly nice person.

Conversely, someone can be an asshole while showing spotless behaviour to the people they meet.

<comment><USER6> I was just struck by the improbability of using "nothing made by an asshole."

Drive a Volkswagen? Or a Daimler, Chrysler, BMW, or Mercedes Benz?

</comment></comment></comment></comment></comment><comment><USER8> "Ms. Goodman's research was conducted under the same high editorial and ethical standards that have guided Newsweek for more than 80 years."

Can anyone comment on their editorial and ethical standards? How high are they to begin with?

<comment><USER9> Since being sold to the Daily Beast and then the IB Times, not very high. There are a lot of factual errors in their "Fall of France" article and even when pointed out Newsweek refuses to acknowledge any of them.

</comment></comment><comment><USER10> > Moreover, [Newsweek] encourages all to be respectful of the privacy and > rights of the individuals involved.

It takes ignorance, stupidity or both to not realize that this "encouragement" is nothing compared to the several $100M that _the_ Satoshi Nakamoto owns incentivizing many people to trample his privacy and rights.

<comment><USER11> Why would him having a bunch of (potential) money cause a lot of people to try to bother him? Steve Jobs, for example, had a lot of (actual) money, and managed to get by OK in his Palo Alto home, whose address was very well known, and was on a public street that was easy to get to, and maintain his privacy. The same goes for most people with large amounts of money.

Is there some reason that Bitcoin millionaires are more likely to be harassed than normal millionaires?

<comment><USER12> Yes: they are not spending large amounts of money on their personal security (yet).

</comment></comment></comment><comment><USER13> Anyone got a no paywall link?

<comment><USER14> [https://archive.is/Q1hi7](https://archive.is/Q1hi7)

</comment></comment><comment><USER15> Are they just trolling the public in this article or adding insult to the injury?</comment>


Facebook malware attack: less than .002 percent of members affected - <AUTHOR> http://www.thestandard.com/news/2008/08/08/facebook-stamps-out-malware-attack

<comment><AUTHOR> Bug report: I tried submitting this with a less than sign (<) in the headline, but it was truncated after the colon.</comment>


Under-the-hood of web bundlers (e.g. Webpack) - <AUTHOR> https://itnext.io/under-the-hood-of-web-bundlers-e-g-webpack-926e868f7f5e?source=friends_link&sk=5f611f4e4e915106a7433cdc8aa3478e <comment><AUTHOR> Webpack is somewhat of a black box for most developers. Tools like "create- react-app" abstract most of the bundler functionality away. I did some research into it and began building my own light-weight web bundler to understand more about what it entails.</comment>


Getting out of the startup rat race - <AUTHOR> https://blog.baremetrics.com/getting-out-of-the-startup-rat-race-66a5a0ca3055 <comment><USER2> Was looking forward to seeing the HN discussion of this and.. tumbleweed :-D

<comment><USER3> Haha, same!</comment></comment>


Worker Surveillance and Class Power - <AUTHOR> https://lpeblog.org/2018/07/11/worker-surveillance-and-class-power/ <comment><USER2> I had an interview at a company, peak6, that allegedly disallowed any sort of out loud work conversations. From what I was told, they only allowed work conversations over IM. That, and tons of cameras strewn around their overpriced office. In the end, they strung me along for something like 3 months while the employee I was supposed to replace decided to stay in the position.

Be wary of a company that offers so little trust and care for its employees - and potential employees!

<comment><USER3> I'm picturing a large wall-mounted light-up dashboard, one line for every worker. As a result of your interview, the status for the person you were "supposed to replace" blinked a red light indicating that their replacement was queued. In the three months that followed, that person cleaned up their act and was thus taken off of probation.</comment></comment>


How to Interview Software Developers: learn from my failure - <AUTHOR> https://medium.com/it-loves-hr/hiring-software-developers-for-non-technical-people-544e763a6c04 <comment><USER2> What you are asking for is the ideal culture. I now work with a team which share these values and working here has been very fulfilling but it was not always like that for me. I have worked with teams with worse cultures and never really understood the importance of these soft skills, but once I got a chance to work with a good team, I acquired these soft skills.

<comment><AUTHOR> Good point, my first job was at a place that didn't have a great culture either. It wasn't until my second job that I started developing my own soft skills.

</comment></comment><comment><AUTHOR> I am starting to improve my writing skills, I'd love any thoughts/feedback</comment>


Deis 0.1.0 – Ready for Dev/Test - <AUTHOR> http://deis.io/deis-0-1-0-ready-for-devtest/

<comment><USER2> You beat me to posting this. Kudos.

I'm Gabriel Monroy, creator of the Deis project. Happy to answer any questions on our 0.1.0 release. We're really excited about where the project stands today.</comment>


Persuading the homeless to vote with coffee at Starbucks - <AUTHOR> http://www.west-info.eu/persuading-the-homeless-to-vote-with-coffee-at-starbucks/

<comment><USER2> "I don't fear universal suffrage, people will vote as they will be told" -Alexis de Tocqueville</comment>


Sublime Productivity: Code Like a Pro with Today's Premier Text Editor - <AUTHOR> https://leanpub.com/sublime-productivity

<comment><USER2> Also, you can watch "Perfect Workflow in Sublime Text 2" premium tutorial. It's free.

[https://tutsplus.com/course/improve-workflow-in-sublime- text...](https://tutsplus.com/course/improve-workflow-in-sublime-text-2/)

</comment><comment><USER3> I think the book is a little overpriced from what it has to offer.

<comment><USER4> Based on the comment I wasn't sure if you actually downloaded it. If you didn't then it's hard to "judge a book by it's cover". I agree that the price looks high for what you would expect, but without actually reading the book I can't make that type of assertion.</comment></comment>


My books of 2012 - <AUTHOR> http://www.tonyhaile.com/2013/01/01/my-books-of-2012/ A collection of Business, Fiction, Science and Philosophical diversions that made me ignore my wife this year. <comment><USER2> I'm a tad annoyed that you listed so many books. It loses its meaning. Some of the books you listed are gems, but they are midstream in a long boring list.

I want my 15 minutes back.

<comment><USER3> I'm impressed he read to many books! Makes me wonder what I'm doing with my time :(

<comment><USER4> I'm wondering if we could get a quick script to count how many pages are in the 75 books listed so we can understand how much did he actually read :-D.

<comment><USER5> Not really a script, but if you use goodreads to track your read books, you can see the number of pages.

Like this: [http://www.goodreads.com/review/stats/6314428-eduardo- rocha#...](http://www.goodreads.com/review/stats/6314428-eduardo-rocha#pages)</comment></comment></comment></comment>


Google May Push Sites to Use Encryption - <AUTHOR> http://blogs.wsj.com/digits/2014/04/14/google-may-push-sites-to-use-encryption/

<comment><USER2> I have mixed feelings about this: any site that has input forms, handles user data, etc. should use the HTTPS protocol.

However, for static content only sites, what is the point?

<comment><USER3> Encryption of _everything_ has a few important benefits:

1) It effectively ends the ability to run _passive_ mass-eavesdropping devices. Even without checked authenticity, you still force anybody trying to listen in to run a more expensive (in both money and CPU) MitM attack. Changing costs from "deploy once and record everybody" to "pay per-target" is huge.

2) We need to normalize (socially) the use of encryption in general, so the people that DO need it don't look suspicious. To paraphrase Phil Zimmermann[1], what you're sending may be simply a holiday greeting-card, but you still put it in an _envelope_.

[1] [http://www.philzimmermann.com/EN/essays/WhyIWrotePGP.html](http://www.philzimmermann.com/EN/essays/WhyIWrotePGP.html)

<comment><USER2> Thanks for that. I now agree with you.

</comment></comment></comment><comment><USER4> Google should set themselves up as a StartSSL competitor. Free SSL certs for everyone in an easy to use interface.

For anyone who wants more than 3 then they have to pay a fee.</comment>


Bird lays off hundreds via Zoom call - <AUTHOR> https://twitter.com/mjnblack/status/1243641637420453889 <comment><AUTHOR> Maybe it was heavily rehearsed rather than prerecorded [https://twitter.com/coryweinberg/status/1243685748957564928?...](https://twitter.com/coryweinberg/status/1243685748957564928?s=19)

Edit: more: [https://twitter.com/coryweinberg/status/1243685675137781762?...](https://twitter.com/coryweinberg/status/1243685675137781762?s=19)

<comment><USER2> Kinda think that they couldn't put a face to it (specifically the CEO) is way worse than it being (possibly) prerecorded

</comment></comment><comment><USER3> TechCrunch has a lot more details: [https://techcrunch.com/2020/03/27/bird- lays-off-about-30-of-...](https://techcrunch.com/2020/03/27/bird-lays-off- about-30-of-workforce-amid-covid-19-pandemic/)

> According to a source, Bird's balance sheet is strong but it needed to > reduce burn in order to extend its runway into 2021.

I would not describe a ~9 month runway as "strong".

<comment><USER4> Well compared to all the companies that claim they cannot last through the lockdown it is.

<comment><USER5> For the first couple of years of my first bootstrapped company I tried to keep "cash in the bank" in excess of 3 months. Everybody knew. The one time (after the first six months of transient jitter) it dipped down close to two months everybody knew, and nobody quit (headcount at that point was about 60). So 9 months seems pretty good.

Though perhaps they are/were on the "don't worry about the burn we can always get more" plan. In that case 9 months does sound perilous....though perhaps many people who couldn't make car payments will become customers?

</comment></comment></comment><comment><USER6> Market was already on the brink, COVID is going to be the excuse for many companies that are over the head with debt/investors money and still are running losses.

</comment><comment><USER7> How is it a company that rents scooter needed 1,387 employees?!?

I'm pretty sure this 30% figure also doesn't take into account their legions of gig workers recharging the scooters.

<comment><USER8> Usually companies just hire on people at that stage to show growth, so that they'll get more money.

Look at AirBnb - they don't need thousands to operate their business, but they have them and they continue to hire

<comment><USER7> I wonder what they do all day. Sounds like it might be the ultimate retirement plan: get paid 150+k and not do much all day because there just isn't that much work to go around.

<comment><USER9> Possibly, but in my experience the less real work there is the more politics and thought leadership tends to crop up.

</comment></comment></comment></comment><comment><USER10> Wasn't this company already facing of running out of cash and other financial issues before COVID? I feel that, like many other companies, Bird is gonna use this pandemic as an excuse, when they had other big problems to deal with already

<comment><USER11> Isn't that business as usual for Unicorns? Lyft and Uber are the same way

</comment></comment><comment><USER12> I wondered if the scooter only companies would be better off than ride sharing companies with small scooter revenue.

Anec-data: one of my relatives brokered a post lockdown lease in a large _redacted_ city for one of the two large ride sharing companies. It was for scooter storage.

</comment><comment><USER13> There are many major American companies that will be bankrupt in a few months if quarantine continues.

No business projects revenue dropping by almost 100% overnight.

<comment><USER14> So if people are broke, landlords are broke, stores are broke, companies are broke -- just who exactly has the keys to the kingdom here? Who isn't broke? Just banks?

<comment><USER15> Any company that sells to people inside their homes is doing great. Games and content providers, video conferencing software, restaurants that do food delivery, Amazon.

<comment><USER16> Restaurants still have the hurdle of fear - is everybody in the kitchen wearing gloves, are they all non-COVID, etc.. There are enough touchpoints in the process to get take out delivered I'm avoidng it.

<comment><USER17> And that is certainly your prerogative to do. My family is getting takeout a few times a week to support our favorite local restaurants. Just providing a counter point that there is still money going into some restaurants (although I'm sure it is less than typical).

</comment></comment></comment></comment></comment><comment><USER18> Bird as a company needs to fail as soon as possible. Their scooters have totally overrun my community — they are strewn like trash on every corner.

I sympathize and wish all the best to its employees, however.

<comment><USER19> Unlike cars. You never see cars parked all over the place.

<comment><USER20> Parked being the operative word. You don't see abandoned cars littering the pavement/sidewalks, left lying around in parks etc. (at least not in most neighbourhoods).

I'm no fan of cars but the idea that a company can just dump junk like this all over public spaces as an intrinsic part of its business model is bizarre to me.

</comment></comment></comment><comment><USER21> Something similar happened this time of last year: [https://techcrunch.com/2019/03/14/bird-lays-off-up- to-5-of-w...](https://techcrunch.com/2019/03/14/bird-lays-off-up-to-5-of- workforce/)

</comment><comment><USER22> ah, i'm reminded of an old comedy classic [https://m.youtube.com/watch?v=bVBYaTwMtmY](https://m.youtube.com/watch?v=bVBYaTwMtmY)

</comment><comment><USER23> Those at the top refuse to stare the consequences of their actions in the eye. A tale as old as time.

If you take on a leadership position, don't be a coward like this. Even if the layoff is due to things beyond your control.

<comment><USER24> there isn't really a good way to lay off remote workers

<comment><USER25> There's no good way to lay anybody off. But there are worse and better ways. A one-on-one video call is much more respectful and humane than playing a recording.

<comment><AUTHOR> This guarantees that a large percentage of people are going to learn about it through other employees rather than from their managers though.

<comment><USER26> This is equally true for in-person layoffs done as individual meetings, which happen all the time.

<comment><AUTHOR> True, but they can try to make both the recently laid off and soon-to-be-laid- off employees be too busy to communicate, or they can round up the ones who will be staying so at least they don't pass around the news to those who aren't going to be laid off before they know they're not on the chopping block.

<comment><USER27> In a remote layoff situation? The whole company would know the moment one person was laid off.

<comment><AUTHOR> No, in an in-person layoff situation. I was addressing the comment I replied to where it said "This is equally true for in-person layoffs".

I've been in an office during an in-person layoff situation (surprisingly only once during my 15+ year career), and they were definitely taking advantage of it being done in person.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER28> But they pulled all the birds off the street. Why wouldn't you at least put them back everyone around riding lyft bikes. Does this have anything to do with the virus.

</comment><comment><USER29> One good result of the Coronavirus pandemic is its cleansing effect on unprofitable and unsustainable garbage like this company.

<comment><USER30> The same could be said of poor software practices. With so many developers out of work why would any company hire a developer that needs a 3mb JavaScript framework and 1000 NPM packages to write 3 lines of code? The argument against reinventing wheels just because talent is rare just evaporated.

<comment><USER31> This trope is so tired, and the reason for using the NPM/Node ecosystem has never been about talent being rare. Choosing JS at all is because you value developer time over time chasing down suitable third party dependencies, handling build incompatibilities, and generally dealing with the mess that is multi-platform development.

<comment><USER30> As somebody who has been writing in these technologies for 20 years I disagree. The entire purpose of jQuery, for example, was exactly because talent was rare. Keep in mind jQuery was around for years before it was popular. It was its Sizzle engine masking the standard DOM methods that made it popular.

When talent is rare you can artificially widen the availability of talent by lowering the barrier of entry. Lower qualified job candidates are dependent on the crutches that allowed them entry, though, which comes at a cost of lost innovation potential and productivity overhead. The cliche _don 't reinvent the wheel_ is completely about developers distancing themselves from innovation. When talent is suddenly and explosively available to the job market there isn't a valid business reason to do that especially as companies have smaller budgets for hiring fewer developers and more developers are competing for fewer available positions.

<comment><USER31> You're implicitly equating making development easier with lowering the barrier to entry. If you make that assumption, then you could say that Boost does the same thing. To avoid this, you would have to never make anything easier to use, which is the whole point of tool development to begin with.

> there isn't a valid business reason to do that

This assumption is quite strange, because "don't reinvent the wheel" is usually a tenet of the more seasoned developer, not the junior developer. Carrying it out to extremes (leftpad) being another beast, usually junior developers will be the ones wanting to build something that already exists, generally for the purpose of testing their ability.

But in general the more senior people I've worked with are the ones who have the philosophies that boring is better, reuse existing solutions if possible, and don't do anything too new or in a novel way, because that is typically the road to knowledge siloing.

<comment><USER30> The term _easier_ is highly subjective so I did not use that word on purpose for that reason, but otherwise the connection I drew between lowering the entry barrier and a superficial abstraction layer was pretty explicit.

I am not a C++ developer and I have no experience writing in that language. I know that Boost is a template system for C++. I know this because for a long time I maintained a multi-language parsing utility and was considering extending support to C++. I never extended that support to C++ in my utility but C++ developers who introduced me to Boost were absolutely confident that parsing Boost logic from a C++ code sample would be next to impossible. Its trivial. If you have experience with embedded languages that sort of multi- dimensional parsing is not as hard as it sounds. A more elegant example is JSX which is a pseudo-XML construct embedded in JavaScript that can recursively contain JavaScript in various ways which then can contain more pseudo-XML islands and so forth. There was also a jQuery template scheme that introduced psuedo-HTML into script tags of actual HTML.

Typically the goal is to make systems that are more simple opposed to more easy. Easy is a disorganized pile of spaghetti code because it took less effort to write with no prior planning. Cleaner and more organized code takes greater effort with fewer interesting parts. Easier is generally preferrable to entry level employees who don't yet have the experience to differentiate easy from simple.

> This assumption is quite strange, because "don't reinvent the wheel" is > usually a tenet of the more seasoned developer

I absolutely disagree. This is what I call an experienced beginner. That is somebody who has been doing the job for a couple of years and has gained confidence with certain techniques and conventions, but has never grown to a level of sophistication or problem solving that most businesses would consider valuable enough for senior level responsibilities. This is the kind of thing that most people would refer to as _Dunning-Kruger_ , because the expertise is limited to something designed for engaging beginners and that expertise is confused with excellence.

> But in general the more senior people I've worked with are the ones who have > the philosophies that boring is better, reuse existing solutions if > possible, and don't do anything too new or in a novel way, because that is > typically the road to knowledge siloing.

There are all kinds of justifications for avoiding writing original logic and most of them are pretty weak. If it cannot be expressed in terms of project risk or financial harm the justification is generally a form of _bike shedding_. That means the developer is framing the conversation in a way their limits their uncertainty exposure without consideration for the product.

* [https://en.wikipedia.org/wiki/Law_of_triviality](https://en.wikipedia.org/wiki/Law_of_triviality)

* [https://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect](https://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect)

<comment><USER31> I have not much more to add, but FWIW the people espousing the "boring is better" and "don't reinvent the wheel" mantras were experienced SV devs, 15 and 30 years experience. They said there is a business justification and it's one of risk, namely that the more home-grown or nonstandard solutions you have, the less likely other people on the team will know what's going on when one of them breaks. There's also the maturity value of an existing codebase in that it has been proven to do the thing it sets out to, whereas a new endeavor may encounter roadblocks that require a rewrite partway through, and also lack documentation and good error messages, don't have the same years of bugfixes, etc.

</comment></comment></comment></comment></comment></comment></comment><comment><USER32> Wow this is bad at a totally different level - it is a new league og messed up. These companies - and more importantly the human garbage at the upper / top level of management of these companies - need to be remembered and when the global situation will return to normal they will need to be given the treatment that they deserve. BEING FIRED VIA A PRE-RECORDED MERSSAGE DURING THE WORST GLOBAL CRISIS SINCE THE SECOND WORLD WAR! - talk about being kicked when you are down, huh?

</comment><comment><USER33> Nobody's surprised</comment>


Ask HN: How do you build a successful mailing list? - <AUTHOR> I'm curious about making a sort of curated newsletter with brief commentary on IT-themed geopolitical events. It would be completely free. I suppose we could generate revenue down the road by offering deep-dive reports to sell to anyone interested. But the main thing to do is build a mailing list, and I'm wondering if anyone has any experience or interesting stacks they'd recommend. Thanks. <comment><USER2> I have heard good things about substack. In terms of starting to collect subscribers, I would create one useful guide or other pieces of content that people in this industry are (very) interested in and offer full access if they subscribe to your newsletter. It might annoy people that they must subscribe to get full access, so you can use a more gentle (but less effective) option and that is showing a popup in which you offer them to get a future relevant post (mention the title in the popup) once it's published. You can do some sort of an interactive post in which they get feedback on their entries via email (I created one for evaluating your startup idea). And never, never ever spam people. Oh, to find relevant content people are interested in try ahrefs (paid, but a great research tool).

</comment><comment><USER3> A few things to add. Consistency is one of the most important things to focus on. That is, send your posts out on a schedule (weekly, monthly etc) and don't vary from it. Keep quality of content high (short and meaningful is better than long and full of fluff). Don't worry about optimization in the beginning. So apart from using something easy to set up, like Mailchimp, don't spend too much time trying to optimize your conversions. In the beginning you are just learning who your audience is and what they value. It took me a while to figure this stuff out and I'm still figuring it out. I wrote about it here, if interested: [https://unintendedconsequenc.es/50-essays-on-unintended- cons...](https://unintendedconsequenc.es/50-essays-on-unintended- consequences/)

<comment><AUTHOR> Pasadena, nice! I've started reading and I want to check out your newsletter for myself.

<comment><USER3> Great, thanks!

</comment></comment></comment><comment><USER4> On the technical side, mailchimp is easy to use and free getting started up to 2,000 people, if you're looking for even more control use AWS with Maildown. Managed solutions like tiny letter and sub stack and several similar also exist. Like most types of content, starting a new email newsletter is easier today than ever before. That said, lower barrier to entry makes it harder to get noticed.

</comment><comment><USER5> Value proposition. What value do I get if I sign up to be spammed?

I'd also set expectations, are you going to post once a day? once a week? only when there's something of value?

<comment><AUTHOR> I think twice a week would be optimal. Every day is too much work, and every other day is still too often. Twice a week (I suppose Mon or Tues and Friday) would give us time to dig through major news cycles, catch up on analysis, and compare sources. The result would be a sort of annotated list of links to stories we view as important, with some commentary strewn in.

I can send over some similarly-themed writing my colleague and I did if you're interested in learning more.</comment></comment>


Ask HN: Is there a realtime mechanical turk service? - <AUTHOR> I'm looking to get Yes/No categorization on images in realtime via a mechanical turk-like service. For instance - "is there a cat in this photo?". Unfortunately most services I've seen take minutes/hours/days for a response w/ a person, or don't get the categorization right for my data w/ an algorithm. <comment><USER2> Mturk sometimes has a bit of latency from issued HITs to cascade through the system, but you can issue anticipatory tasks to counteract this latency.

The more $$ you offer, the less time it will take someone to take it on.

Combining these two concepts, bundle dozens of tasks into a single HIT, and score based on completion and promptness. You're going to have to build your own rating software, but this is very possible to do. Just be up front that promptness counts; most of the time it doesn't.

<comment><USER3> I disagree, at least for certain tasks. For example, I had a data entry task that I wanted done in near real-time. It basically amounted to "Type in the 5 lines of text in this document." I ran some tests on MTurk and found zero relationship between amount of money offered and the speed with which people accepted the job.

</comment></comment><comment><USER4> (disclosure: I work at StintMint) Real-time is possible assuming low complexity of requirements and consistent request processing rate. StintMint offers a managed crowdsourcing application to businesses in Commerce and AI Tech. Do visit our website to get in touch. Would be happy to take over from there.

</comment><comment><USER5> (Disclosure - I work for SquadRun) Near real time is doable if we have a sense of your volumes and your data flow. We work with Uber, Sephora, Teespring, etc. for their time-sensitive data operations. Happy to chat to understand more. Just drop us a line on our website.

</comment><comment><USER6> (disclosure: I work for Alegion) Near realtime is doable. Standard approach via MTurk requires processing that takes additional time. At Alegion, we use techniques to improve upon the standard approach. Would love the opportunity to discuss your project with you</comment>


I pushed 20 more of my projects to GitHub - <AUTHOR> http://www.catonmat.net/blog/i-pushed-20-more-of-my-projects-to-github

<comment><USER2> For anyone looking for plain JavaScript base64/ascii85 codecs, I wrote a pretty decent (quicker than what I could find, concise & readable) one about a year ago (would need to be modified very slightly to be a node/commonJS module, and could perhaps be a bit shorter with a different style of error handling):

<http://pastie.textmate.org/pastes/695197>

A slight variant of this base64 codec (I believe suitable as a node/commonJS module) is also used by the <http://js.io/> project: [http://github.com/mcarter/js.io/blob/master/packages/std/bas...](http://github.com/mcarter/js.io/blob/master/packages/std/base64.js)

<comment><AUTHOR> Sorry, it doesn't work on binary data:

        node> var buf = require('fs').readFileSync('./tests/data/data-png.png');
        node> require('jacob.js').base64.encode(buf)
        Base64CodecError: Input contains out-of-range characters.

Also node.js now has its own base64 encoding and decoding functions right in Buffer, so there is no longer need for any base64 modules.

<comment><USER2> Well okay, it's intended to work in the browser (note: this was also written before Node had any decent binary data type; I haven't really been keeping track, does it now?) and so "binary data" is just a string where each byte is the lower byte of one character. It could pretty easily be modified to take advantage of better data types in contexts where they are available (or if someone's using a string for "binary data" where two bytes of data are stored in each character, modified to deal with that).

<comment><AUTHOR> No, it still does not!

<comment><USER2> I guess I should just go look (though I haven't been using Node for anything for about 8 months), but what does it do for binary data then? When you load a png file, what do you get?

<comment><AUTHOR> Just char * to a memory block abstracted as the Buffer class.

</comment></comment></comment></comment></comment></comment><comment><USER3> I'll second that. Having only ever used private CVS before in my life, I've never published anything open source ever. In fact, after hearing everything I have about Git, I went ahead and purchased the $7 plan so that I could give it a try, but without having to share anything publicly.

That said, as soon as I started checking code in, I ended up creating 2 (very small) projects and sharing them publicly, as they weren't anything close to even remotely core to the other product that I'm building (that I bought github for), and it seemed silly to use up 2 of my private projects on such trivial applications.

This is exactly the behavior that Github encourages, and as someone who hasn't contributed to open source in a very long time, it was interesting to see how quickly Github re-converted me.

<comment><USER4> Did your small projects gain any traction?

<comment><USER3> I just pushed them last week, and they're what I'd call 'entry-level-code' at best, so no. I honestly don't expect them too, but if someone were googling for 'tornado webserver administration', they might find my code, and it might be useful. Beyond that, I don't really have much greater expectation.

Edit: <http://github.com/bmelton> is the location of the projects. There are currently 2 up there, both in a very fledgeling state:

<http://github.com/bmelton/Braveicon> is a simple favicon library that will accept a URL as a parameter and find the favicon for a given url. The URL can be fully qualified ('<http://news.ycombinator.com>) or loose (news.ycombinator.com), and braveicon will step through all of the W3C valid means of specifying a favicon and return the URL.

<http://github.com/bmelton/Twister> is a server administration framework for starting / restarting tornado web server instances. Since Tornado is typically managed by your app, the app must be (very slightly) modified, but this reduces having to 'ps -ef | grep [myscriptname]' multiple times to kill your app, and gives you 'twister.py restart' instead.

<comment><USER5> You might want to edit that comment to link to your project since the comment will probably now rank higher than your repo for that hypothetical Google user.

<comment><USER3> LOL. Done. Hopefully the YC gods don't frown too negatively on my 'advertising' my projects on HN.

</comment></comment></comment></comment></comment><comment><USER6> Peteris: Any particular reason you pushed the book reviews to GitHub, instead of posting them to your blog?

<comment><AUTHOR> Yes, I could track my own progress easier this way, going chapter through chapter. Just writing a blog post wouldn't feel as productive. Writing long blog posts is very difficult. But pushing a review of a chapter to GitHub every other day is really easy. That's why I also usually split my articles up in n-part series, it's very difficult to write long articles.

<comment><USER6> Thanks, that makes sense. I don't use GitHub, but I suppose I'll have to start, now, just to get your reviews. Just think: you're the killer app.

</comment></comment></comment><comment><USER7> I like the image stuff. May fork it when one of my projects matures.

</comment><comment><USER8> good for you, and yes i agree totally. something about making it public forces you to take a tiny step forward. my first push to github here, for the record <http://github/com/irv/tarsnap-backup></comment>


Ask HN: What are some purchases that increased the quality of your life? - <AUTHOR> <comment><USER2> I work from home now, but when I still commuted (BART train in the bay area), the best purchase was a ultra thin laptop-sleeve-style backpack. On top of being super lightweight, I can sit with it on my back, or I can stand (and not be one of the jerks who don't put down their huge backpack on the floor when it's crowded and they're standing). If it's raining, it fits underneath my jacket.

In a similar vein, lightweight everything is really important to me as quality of life, as a skinny lightweight Asian person who has a lot lower strength than the average American.

After going through many different brands of sneakers as I grew up (all your usual brands like Nike, Adidas, Reebok, Converse, etc.), I've settled on Big5's Denali (low-cut) hiking shoes. It's both cheap in price and cheaply built, so it does worn out every couple of years and I have to get new ones; but it's the most lightweight and comfortable (for the shape of my feet) shoes I've worn. Similarly, for pants and jackets I've settled on Uniqlo, jogging jeans (looks like jeans but feels like sweat pants, and is very inexpensive), ultralight down for jacket.

I'm also a mech keyboard and ergonomic mouse guy (along with good ergonomic office chair, earphones, etc.), but I would say those purchases don't even come close to all the other things I mentioned above, in terms of qualify of life effects.

</comment><comment><USER3> \- A collapsible kettle for drinking tea when I'm traveling. I have to travel several days every week and I can't drink tea from those hotel machines because they have coffee residue and tea tastes bad. I drink A LOT of tea so a good investment.

\- Mechanical Keyboard

\- Ergonomic Mouse

\- A decent pair of headphones. If you enjoy listening music or watching shows using headphones, a good set can make a big difference.

\- Two monitor setup for working/wasting time on my computer. Improves posture and it's more comfortable that using just one monitor+laptop since they probably are different size/resolution.

\- A big water bottle. I wasn't drinking enough water and always forgot to drink more. So now I just fill up my bottle every morning and take it with me to work.

\- This book: "The Daily Stoic: 366 Meditations on Wisdom, Perseverance, and the Art of Living". A ton of good short lessons on how to live.

</comment><comment><USER4> Our bed. Seriously.

I never paid much attention to my bed and typically bought a less expensive mattress. My last one was a quite firm memory foam mattress that was definitely firm, but I didn't think much about it and just thought I was generally a light sleeper. I also really looked forward to sleeping in hotels for the nicer bedding. I just didn't know better.

When we moved earlier this year we spent some $$$ and bought a new king mattress, mattress pad, pillows and sheets. It's made all the difference. I sleep through the night with less tossing and turning, and I'm less achy and stiff in the morning. It's been a whole new world and I love the new bed.

The only downside is that it's ruined me for hotels now. I'd say 90% of hotels I've stayed in this year don't even come close to our bed at home. Even in the higher end places like the St. Regis or Edition.

Spend the money and buy a nice bed.

</comment><comment><USER5> Switching from a 2 stroke to a 4 stroke grass trimmer this summer was an unexpectedly great buy. The 2 stroke trimmer is way more loud, heavy and smelly. I cut the grass half hour faster and don't die from exhaustion in the process.

</comment><comment><USER6> \- A used Kindle Paperwhite. \- A motorcycle \- Automated microchip based pet feeder \- Electric bicycle \- Roomba robot vacuum cleaner \- Heated underblanket \- Some equipment to exercise at home

<comment><USER7> A yes to motorcycles. Mindfulness on two wheels.

</comment></comment><comment><USER8> A barbell, plates, squat stands...so I can get in a decent workout whenever I want without driving to or waiting for equipment at a gym.

</comment><comment><USER9> Personal training changed my life (and possibly saved it).

Also, AirPods made a big difference in dealing with my commute. The wires on my other headphones got in the way all the time and seemed to get tangled just by virtue of existing.

<comment><USER3> do the AirPods work fine if there's a lot of noise outside? I prefer noise cancelling headphones but I don't like going around with my big Bose headphones so I ended buying the Sony wf-1000xm3 and they are pretty nice. I think they are the only noise cancelling earbuds truly wireless out there.

</comment></comment><comment><USER10> My house. My bicycle. My banjo.

</comment><comment><USER11> E-scooter (dependent on good bikepaths), macbook, comfy office chair and big screen at home for WFH days.

</comment><comment><USER12> Raspberry pi for pihole. 2015 MacBook Pro. Sublime text. Costco membership (they cap markup to 10%).

</comment><comment><USER13> Aeropress and a hario hand grinder (for coffee) my morning ritual makes me happy

<comment><USER14> This. And a milk frother/warmer.

</comment></comment><comment><USER15> A few extra lamps to increase indoor brightness have come in handy.

</comment><comment><USER16> CrossFit gym membership

</comment><comment><USER17> A kickass road bike.

</comment><comment><USER18> without any particular order: Sonos Beam, iPad, robot vacuum cleaner, my house and raspberry pi to handle smarthome stuff.</comment>