Staff SWE at Google UK can get you to 400k+ (depending on stock grants / stock price gains).
HN user
oesmith
I've been doing this for nearly five years now, so I've gradually built up a system that works for me. Usually I'll use one of two devices:
* Asus Chromebook Flip (C100PA)
* iPad Pro 10.5 with keyboard cover
When I'm developing, I use ssh or mosh to access my workstation in the office and then tmux+vim. Mosh works pretty great with poor connectivity. I've pretty much mentally mapped the signal quality along my route, so I know when to look out the window for a couple of minutes to wait for signal to come back...
When I'm not developing, I'm usually using Gmail+Google Docs/Sheets/etc to get stuff done. They all work relatively well offline/online.
For connectivity, I use a Raspberry Pi Zero with a 4G data stick as a WiFi hotspot (the on-train WiFi is terrible, and tethering to my phone kills the phone battery way too quickly). That setup can run for 6-8 hours on a little Anker USB battery pack.
I'm looking forward to Google opening an office in Bristol. Until then, I'm stuck on a daily commute from Bath to London.
The commute sucks, but I couldn't stand living in London (nor SF or the bay for that matter).
Skynet, like the UK military satellite comms network?
Pro-tip: you can use "brew info [package-name]" to lookup the post-install info that flashes up after a homebrew install.
$ brew info cassandra
cassandra: stable 2.1.2
http://cassandra.apache.org
Not installed
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/cassandra.rb
==> Caveats
If you plan to use the CQL shell (cqlsh), you will need the Python CQL library
installed. Since Homebrew prefers using pip for Python packages, you can
install that using:
pip install cql
To have launchd start cassandra at login:
ln -sfv /usr/local/opt/cassandra/*.plist ~/Library/LaunchAgents
Then to load cassandra now:
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.cassandra.plistSame here. I'm using the mobile web versions of Facebook, Twitter and G+ on my iPad and iPhone and I'm not (yet) missing any of the features of the native apps.
There's also j2objc, another interesting tool for creating a common layer for iOS and Android apps.
https://github.com/google/j2objc
I'm playing with it for a personal project, and as long as you're not too adventurous with your use of the JRE, it produces pretty usable Objective-C code.
The last paragraph of the article:
"Because of its sample size (1,801 people) and choice of topic, Pew’s study might not be a fully accurate example of social media’s silencing effects, but it’s definitely fodder for discussion – if you dare! – as well as further research."
Sigh.
.. not to mention that there's a lot of overlap between aerospace and F1 engineering. Plenty of the engineers (even the trackside ones) started out studying aero engineering.
+1, I live in a semi-rural town of ~10k residents and I get 75Mbps / 15Mbps fibre-to-the-cabinet broadband.
The infrastructure is owned by the incumbent monopoly provider, but the service over the top can be supplied by any one of a number of large and small suppliers.
Premium economy?
I usually fly between LHR and SFO on BA premium economy. It's usually sub-£1000. Compared to economy, the seats are wider with more leg room and the meals are better.
It's a pity they still fly creaking old 747s on that route though. One time went to SFO through LAX where the first leg was on an A380 and that completely spoiled 747s for me.
Unfortunately, the A380 doesn't make up for the horrors of connecting onto an AA domestic flight at LAX, so I can't do that all the time now...
Google Webmaster Tools' "Fetch as googlebot" feature is useful in debugging these problems.
See http://www.mattcutts.com/blog/fetch-as-googlebot-tool-hacked...
Looks like a hacked wordpress install.
http://wp.smashingmagazine.com/2012/10/09/four-malware-infec...
I'm reading on an iPad, so the risk of system infection is negligible.
However, I just switched on my home VPN and the links disappeared. Time to talk to someone in netops, methinks.
Is this a test of whether anyone actually reads these articles? Every 3rd paragraph has a viagra spam-link inserted in the middle of a sentence.
Summary: Unit testing is hard, so it's not worth the effort.
I think many go programmers would disagree with you, and C++ programmers who've discovered clang-format too.
Bikeshed discussions about formatting quickly go out the window when you have an automated tool that can settle all arguments.
How about taking a look at the Google ObjC style guide? https://google-styleguide.googlecode.com/svn/trunk/objcguide...
I'm not convinced by private properties either. Use ARC and just define your ivars in the implementation.
Exactly my first thought too!
I wonder why Google's Closure Compiler hasn't taken off more in the open-source world. At the cost of some mandatory comments to help the compiler, it's able to analyze and remove unused library code from your application.
Don't forget, those teenagers entire families are now on Facebook. I concede that the actions of teenagers might be an indicator of what's to come, but the world has hardly 'moved on' yet.
FYI, there's a typo in the code screenshot.
s/versoin/version
31, and the oldest I can find is from mid-1998. A small piece of C++ code to replicate the "cool" then-new docking windows in Visual Studio.
http://www.codeguru.com/cpp/w-d/docking/article.php/c1451/A-...
This argument applies to any web service. There's no guarantee that a $5/yr paid web service isn't profiting from your data the same as anyone else. Why only make $5 when you could make $35?
It really boils down to who you choose to trust with your data. As an insider, I'm very happy with the privacy controls within Google. I'd be more worried about a less well-established player, regardless of whether they charge a fee for their product.
Yes, if all you want is to confirm that a TCP connection has closed and flushed correctly, then AFAIK, that's entirely possible with a [shutdown, select, read] sequence.
I struggle to understand why an RPC system (as detailed in the article) wouldn't want an app-level acknowledgement though...
The reliability signals this app needs are built into both TCP and the socket programming interface, from what I can tell. The application-layer acknowledgement it wants appears duplicative.
An ACK only suggests that a segment has reached the recieve buffer successfully. If the receiving application crashes between buffering incoming data and successfully processing it, that's expressly not TCP's problem. The RST will signal that the receiver has died, but does not imply whether or not the application has successfully processed any buffered data up to that point.
AFAIK, an application-layer acknowledgement is the only way to solve this problem.
London's an awful lot better than most of the rest of the UK. I'm on a similar package as the post above, but only since moving to London.
Working anywhere else in the UK, I'd struggle to get half that.
Yup, the real best practice is to use your judgement and choose the right test for the job.
If it's something that you can see in a browser (and the results are visible too), then it's a candidate for an integration spec.
You really shouldn't be integration testing stuff like security. For example, testing a user can't submit a form they can't see (which is where horrible Rake::Test::Methods mixin hacks start appearing).
You also shouldn't (imho) be integration testing side effects that aren't visible to the user. For example, if an action ends up in an audit log that the user is never going to see, there's no point firing up an integration test to do that. A light-weight controller test can do that just fine.
I really don't like the idea of "no controller tests at all" as a best practice.
If you're having to mixin Rack::Test::Methods to write your "full-coverage" integration spec, then you're really writing a controller test. It should go in a controller spec without all the horrid mixin hacks.
... and that's why I unsubscribed from LRUG this afternoon. There's more discussion about recruiters than ANYTHING ELSE.