MongoDB interactive tutorial - <AUTHOR> http://www.mongly.com/

<comment><USER3> Funny easter egg: If you do db.unicorns.remove({}) after it asks you to list the collections, typing "db.unicorns.count()" will redirect you here: <http://www.thinkgeek.com/caffeine/wacky-edibles/e5a7/>

(At least I think it's an easter egg, I didn't get all the way through. Maybe murdering unicorns is a normal part of the tutorial)

</comment><comment><USER4> This tutorial was totally cool! Props to the guy who made this, and for doing something like this while in his bored spare time... 1 complaint however is that it doesn't explain much about the difference between MongoDB and MySQL, or other databases. I was really hoping to get to hear how it compares, what the pros and cons are out of using this vs. other databases

</comment><comment><USER5> I found this insanely helpful! At first I thought the tutorial was just a scripted app which only listened for the right queries to move on. I was a little blown away when I realized I could run other queries against the tutorial db.

<comment><AUTHOR> once you get to lesson 10 or about, it limits the input quite a bit since the lessons start to build atop each other. Before that, or after you are done, you can do a lot.

The commands are executed against a real unicorns mongodb collection (each user having his or her own)...so you are only limited by what's been implemented in the javascript shell and on the thin proxy backend.

This does mean that someone who wanted to take the server down probably wouldn't have to try very hard.

</comment></comment><comment><USER6> A few latency issues... or is it just tutorial related sluggishness or is it representative of Mongos' CAP tradeoffs? I guess 'eventually consistent' kicked in by the second find query. If that is what really happened, it is really cool to visualize 'eventually consistent'!

Output from back to back db.users.find() command. It took a while for Johnny to be updated to Cash.

> db.users.find();

[ { "_id" : { "$oid" : "4d82805ecc9374271b03dd8a" }, "name" : "Johnny", "languages" : [ "ruby", "c" ] }, { "_id" : { "$oid" : "4d828066cc9374271b03dd8b" }, "name" : "Sue", "languages" : [ "scala", "lisp" ] } ]

> db.users.find();

[ { "_id" : { "$oid" : "4d82805ecc9374271b03dd8a" }, "name" : "Cash", "languages" : [ "english" ] }, { "_id" : { "$oid" : "4d828066cc9374271b03dd8b" }, "name" : "Sue", "languages" : [ "scala", "lisp" ] } ] >

Ed: Oops. I was on the try.mongodb.org page. Not the linked article. I am trying that now.

</comment><comment><USER7> Awesome tutorial. It's always fun to mess around with things like this. I am running into a problem with sorting though. On lesson 6 I am sorting with {weight:1} which the tutorial says is wrong, but I get the same answer as sorting on {weight: -1} which is correct according to the tutorial. Or is this a mongodb thing? Anyway, keep up the good work.

<comment><AUTHOR> weight:-1 is correct..since you want the heaviest, you sort by weight descending. weight:1 _should_ have returned documents in ascending order but wasn't working. It's fixed now on the tutorial..as well as in the core web console: [https://github.com/karlseguin/Mongo-Web- Admin/commit/761cd4e...](https://github.com/karlseguin/Mongo-Web- Admin/commit/761cd4e60682eb4fc8c941fc74d29696159a1bce)

</comment></comment><comment><USER8> Lesson 6 asks for 'Here's a tricky one: get ONLY the NAMES of the 2nd and 3rd heaviest male unicorns' Which made me query: db.unicorns.find({gender:'m'}, {name:1, _id:0}).sort({weight:-1}).skip(1).limit(2) but it wants: db.unicorns.find({gender:'m'}, {name:1}).sort({weight:-1}).skip(1).limit(2)

<comment><USER9> Lesson 7 quit on me. How do I skip lessons? Ze mouze clickz, zey do nottingz.

<comment><AUTHOR> lesson(8);

</comment></comment></comment><comment><USER10> Good tutorial.

After lesson 16 all the instructions disappeared and I was left with a white screen. Tried to go to a different lesson or the restart command but the instructions didn't come back. Couldn't replicate the problem unfortunately.

<comment><AUTHOR> ya, I've seen this but I can't reproduce it either. Really have no idea. Refresh and lesson(17); should at least let you continue from where you left off.

</comment></comment><comment><USER11> Dead simple, and really clever. I actually think this has a really handy pace and tone.

</comment><comment><USER12> I love interactive tutorials! I wish there would be one for python I could pass around (is there?).

The timeouts on this particular page could use some tweaking, though.

</comment><comment><USER13> I tried the first one "It's easy, just enter db.getCollectionNames();"

Received: "undefined method `collection_names' for nil:NilClass"

Edit: It's relying on my cookie which wasn't enabled, oops.

The official MongoDB interactive tutorial: <http://try.mongodb.org/>

Seems to be a clone of redis: <http://try.redis-db.com/>

<comment><USER14> Actually, the Redis one was a clone of MongoDB's.

</comment></comment><comment><USER15> Beautifully designed. It feels as if I am talking to a real person.

</comment><comment><USER16> In the real world you probably wouldn't want to have a dob field on the unicorns table. Instead just use the timestamp embedded into the _id field.

Pretty good overall though.

<comment><USER17> The issue with that is if your DB gets backed and starts queuing writes, the timestamps will be skewed. Obviously this isn't always a show stopper, but a caveat nonetheless.

<comment><USER18> Actually the _id is usually created client-side so the timestamp will reflect when the application created the object rather than when it was processed by the DB. The only major exception is when the DB creates the _id for an upsert.

</comment></comment></comment><comment><USER19> I still prefer the tutorial on the homepage of mongodb.org. Click "Try it out" and type "tutorial". This is very well done too, though.

</comment><comment><USER20> The DOM has exactly eight words of content and no forms or links at all. I'm worried about this trend of tutorials from authors who fail to get the very basics like progressive enhancement right. We should be showing pages with _better_ authoring than average to novices, because most of the web will eventually converge on the quality of the average tutorial today.

</comment><comment><USER21> I'd love something like this for either Javascript itself or Node.js - <USER2> ideas anyone?</comment>


Revealed: School board member who took standardized test - <AUTHOR> http://www.washingtonpost.com/blogs/answer-sheet/post/revealed-school-board-member-who-took-standardized-test/2011/12/06/gIQAbIcxZO_blog.html

<comment><AUTHOR> Hat tip to Science Blogs

[http://scienceblogs.com/principles/2011/12/test_taking_takes...](http://scienceblogs.com/principles/2011/12/test_taking_takes_practice.php)

for publicizing that the name of the Florida school board member who had trouble taking a tenth-grade state assessment test is now known. "Roach, the father of five children and grandfather of two, was a teacher, counselor and coach in Orange County for 14 years. He was first elected to the board in 1998 and has been reelected three times. A resident of Orange County for three decades, he has a bachelor of science degree in education and two masters degrees: in education and educational psychology. He has trained over 18,000 educators in classroom management and course delivery skills in six eastern states over the last 25 years." Hacker News participant blasdel posted the underlying Washington Post story

[http://www.washingtonpost.com/blogs/answer- sheet/post/reveal...](http://www.washingtonpost.com/blogs/answer- sheet/post/revealed-school-board-member-who-took-standardized- test/2011/12/06/gIQAbIcxZO_blog.html)

I am submitting here as a reply to the original thread about two hours ago.

<http://news.ycombinator.com/item?id=3325557>

One day ago Hacker News participant kahirsch posted

<http://news.ycombinator.com/item?id=3317821>

a link to the actual test,

<http://fcat.fldoe.org/fcatrelease.asp>

but unfortunately that posting never made it to the main page here on Hacker News. Thanks to the bloggers, journalists, and Hacker News participants who followed up on the original story.</comment>


HN Who Is Hiring – Sorted, Filtered and Searchable - <AUTHOR> http://gitrecruiter.com/hn-who-is-hiring

<comment><USER2> Feedback: I get a blank page in Firefox, but something that looks useful (but as yet unexplored) in Chrome.

<comment><AUTHOR> Thanks. Seems Firefox is choking on ES6. Weird!</comment></comment>


Burning Man's Tech Director Brings Full-Scale IT to Black Rock City - <AUTHOR> http://www.computerworld.com/article/3145709/it-management/burning-mans-tech-director-brings-full-scale-it-to-black-rock-city.html <comment><USER2> So what's the point of taking all that time and going through all that fuss to put yourself out in the middle of the desert, when, once you get there, you find out that it's... exactly like home?</comment>


My Sites being DDosed, What can i do? - <AUTHOR>

Hey, the site im hosting with 1&1 is currently being DDOS (for the last couple of days on and off) and the hosting company are not responding atm. Is there much i can do about it? <comment><USER2> It depends on how serious the DDOS and if you expect it to continue. Switching to another host and not letting them know about your situation could result in some unpleasantness.

There are hosting providers which specialize in hosting sites which are under DDOS attacks.

Depending on your needs (shared, dedicated, etc.) you might want to investigate a number of different companies. In the past I've found webhostingtalk to be an OK community for knowledge about this sort of thing.

If you just want a name for right now, I've heard ok things about <http://www.blacklotus.net/> . They do shared hosting, dedicated servers, or if you want to keep a server farm on something like EC2 they do reverse proxying (although since you use 1&1 I'm assuming that your probably on either shared or a single dedicated box). There may be better providers out there, its been a long time (thankfully) since I've head to look into this sort of thing.

</comment><comment><USER3> Switch to another host. There are thousands of other hosts out there.</comment>


Programming in D - <AUTHOR> http://ddili.org/ders/d.en/index.html <comment><USER2> D is a fun language, and some friends and I (mostly my friends) have been/were writing an exokernel in it[1], but between the weird licensing, D1 -> D2 transition, dual standard libraries, and a few other things, it's been really rocky.

I hear it's a bit better these days, but my "better C++" interests lie in Rust nowadays. That said, this link is one of the ways D is strictly better: since it's been around a while, there's more educational information out there.

1: <https://github.com/xomboverlord/xomb>

<comment><USER3> I'm curious what the "few other things" are because the things you mention specifically are a few years out of date at this point. I'm not sure what licensing issues you've had but phobos is Boost licensed which is extremely liberal (basically "use for whatever you want just don't remove this license text when copying this source code").

Pretty much everyone uses D2 these days unless they are maintaining a legacy system written in D1 and transitioning to D2 isn't worth the effort in their case.

Phobos versus Tango hasn't been an issue for years. In fact, in D2 you can use Phobos and Tango side by side[1].

Rust is very interesting and I'm excited to see where it is headed but it's still rather immature compared to something like D.

1\. <https://github.com/SiegeLord/Tango-D2>

<comment><USER2> > the things you mention specifically are a few years out of date at this > point.

Right, hence the 'I hear it's a bit better these days.' Maybe I should have been more clear.

> I'm not sure what licensing issues you've had

The whole time I was using the language, there was the dual licensed aspect of the compiler, where the front end (I think?) was not open, but the back end was? Or maybe the other way around? I think I heard that Walter ended up OSSing the entire thing. As a strong BSD proponent I find complex licensing requirements tiring.

> but it's still rather immature compared to something like D.

Right, I thought I said this too.

<comment><USER3> Yeah, Walter did end up opening up the backend to DMD but the backend is still not Free Software only because Walter is licensing it from Symantec. He accepts patches to fix problems in it but it is less than ideal. The frontend is GPL and has had the copyright assigned to the FSF.

The good news is that GDC (gcc backend) and LDC (LLVM backend) both produce faster binaries than DMD and are completely open source. The only downside is they tend to be a version or two behind DMD (which at DMD's release rate is around 3-6 months or so I'd say). Also, LDC isn't available for Windows primarily because LLVM doesn't yet support SEH exceptions.

In any case, the compiler's licensing doesn't affect software you write in D.

</comment></comment></comment></comment><comment><USER4> Thank you. I'm actually watching Ali's Session of DCONF 2013 and was wondering where this book was. I totally recommend watching the sessions: <http://www.youtube.com/watch?v=mPr2UspS0fE>

<comment><USER5> I wonder if they are being deliberately slow at releasing these videos so that each one gets discussion and views. The conference has been over for some time now.

<comment><USER4> Same here. Although, it may be lack of time too. It's a shame, I'd like to watch "Shared Libraries with D".

</comment></comment></comment><comment><USER6> I'm interested in D but lack of tutorials/documentation have always kept me away from it. It'd be cool if it had something similar to Python's tutorial.

<comment><USER7> The D Documentation exists also in CHM form thanks to CyberShadow (I recommend reading it with ChmSee if you are a linux user):

        http://thecybershadow.net/d/docs/

        http://thecybershadow.net/d/docs/d2.chm

<comment><USER8> Sweet! What a blast to browse this in a native app! :) Page flipping, keyword searching ... everything happens _immediately_. Byebye Web browsing. Just do it:

      sudo apt-get install chmsee
      wget http://thecybershadow.net/d/docs/d2.chm
      chmsee d2.chm &

</comment></comment></comment><comment><USER9> D is great but lack of tool support (proper intellisense) means we're all stabbing in the dark trying to figure out what function to use, where it comes from and what its parameters are supposed to take. Also, really needs declarative parallelization mechanisms a la OpenMP. Plus, unsure if compiler supports vectorization, SIMD support would be nice to get.

On the other hand, amazingly fast compiler, very concise language, and metaprogramming! Want a decent IDE!

<comment><USER10> "D is great but lack of tool support (proper intellisense) means we're all stabbing in the dark trying to figure out what function to use, where it comes from and what its parameters are supposed to take."

Some people like to read the documentation and not let their editor figure out how to program for them.

<comment><USER11> Wasting time just to enhance your own ego is not a virtue. If you really find that pseudo-religious penance is beneficial to your smug sense of superiority then wear a hairshirt while you program.

<comment><USER12> Bah - the point is not that it is better to look things up than to have an IDE know things for you, the point is that if your IDE _doesn't_ know those things, you should be able to find them yourself. It is bad to be beholden to intellisense to the point where you actually _can't use_ a language that it doesn't work well for.

<comment><USER11> Are you seriously arguing that a programmer, who surely has more than a passing familiarity with how to search for things on the internet, would forget how to look up documentation after using an IDE for some time period? The art of programming is not masted by mindless repetition of laborious documentation lookups. Searching documentation isn't an advanced skill that requires constant practice to remain capable. Generally there are still plenty of things to look up (has somebody solved this before, is there a library to do this, has somebody already figured out a workaround for this bug in library/framework X that I'm using etc etc).

I find languages with poor tooling irritating to use, in the same way that I find other language deficiencies irritating. I usually wish I was back using something more powerful. For example, it's the feeling I get when working with strings in C, or using a language without lambdas. I am irritated at my time being wasted when using languages where the compiler doesn't warn me about simple mistakes, or when I have to manually filter out false positives when renaming something with a tool that doesn't understand the code beyond doing find/replace/regex on a stream of unicode characters. None of this means that I can't get work done with 'blub' language and tooling, but the fact that something better exists is always in the back of my mind, and knowing I have mastered a worse tool doesn't give me much satisfaction.

The idea that more modern and better tools are a crutch is hardly unique to software development. In just about any field you can find people advocating for the 'character developing' tedium of the old ways. The irony of course is that the same arguments nearly always apply to the older methods being advocated: they once were new, and the hard won knowledge of the even older method became redundant. See: punchcards, assemblers, compilers, build automation tools, version control software, syntax highlighting, documentation being a big physical book with an index, compiler errors and warnings, images, refactoring tools, automated testing. Just about all of those have been described as a crutch that prevents people achieving real deep understanding of the computer or their code. Does it make you feel inadequate as a programmer to know that you couldn't do your job using punchcards, or as you put it, to be 'beholden to a text editor to the point where you can't program without one'.

<comment><USER7> D has intellisense in MonoD and VisualD.

<comment><USER11> That's good to know. I was not intending to disparage D, which I have not used so I don't know how good the tooling is one way or the other. I was merely responding to comments implying that better tooling is a crutch for people who can't really code.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> I've been thinking about learning Go this summer, but this article just reminded me about D. Anone have any insights re the two?

<comment><USER14> I use Go actively, and I come back every few months to D. In short, use Go if you want a simple, structure development environment, but use D if you want a better C++. I like Go because it's well designed, but I like D because everytime I review the docs, I learn something new. Here's some very basic analysis:

Go is fantastinc for writing servers. The concurrency model is awesome and the standard library is surprisingly extensive given its age. It does work for non-server things, but it was developed for making concurrency as used in servers easier. There is no manual memory management, unless you use a C extension.

Pain points:

* no inheritence: it's fine for 90% of problems, but really annoying for the last 10%

* super-strict type system: byte isn't implicitly convertable to int, for example

* opinionated: code style, build system, etc.; everything can be worked around, but it's a recurring theme

* no manual memory management: the GC is getting better, but it'll never be good enough for writing intense games

D is awesome for writing more general software. The general feel is what C++ would have been if it was designed better. It has a stronger connection to C, so manual memory management is an option with free/malloc. However, most of the time you'd rely on the GC, but it's nice when you absolutely have to control things, e.g. for a game.

Pain points:

* not enough documentation: the website is awesome, but when you try to do something complicated (like write a game), it's uncharted territory

* Annoying bugs, especially in CTFE: most normal operations work fine, so this isn't really an issue

* no package manager: well, there is DSSS and Orbit, but I haven't found one that I like

* no standard http lib: terrible if you want to do web-stuff

I actually recommend them both. They're very different languages built for very different things, but you can't go wrong with either. Go 1.1 is about to be released (the "final" release candidate was released last week), and it has some cool new features (I like method values a lot). Then again, D has awesome metaprogramming support (templates are magic =D).

<comment><USER15> For D, vibe.d is great for web development, and it comes with a package manager:

<http://vibed.org/> <http://registry.vibed.org/>

</comment></comment></comment><comment><USER16> Not easily recognizable if it's about D1 or D2.

<comment><USER17> I was just reading a bit of the book and stumbled upon this.

<http://ddili.org/ders/d.en/hello_world.html>

"Do not install a D1 compiler. This book covers only D version two."</comment></comment>


25 things I learned from Fred Wilson - <AUTHOR> http://25iq.com/2014/07/05/a-dozen-things-ive-learned-from-fred-wilson/

<comment><AUTHOR> I think the point Tren makes about dilution and how the fancy office and Aeron chairs which are funded by investor capital all can be translated into equity given up is spot on. Think founders often forget that especially in our current culture of fundraising being celebrated as a sign of success.

As I read Tren's example, it seemed insanely short-sighted especially when the goal should be not just maximizing the value of the equity but maximizing the amount retained by the people building the company on a day-to-day basis.</comment>


Show HN: Rebataur – We build products for startups - <AUTHOR> https://rebataur.com <comment><AUTHOR> Rebataur is startup that is in the service of startups. We make tools and products for startups to organize and execute their product strategy.

We also provide service to startup in helping them build their website, product or infrastructure or just advisory.

Some of our notable projects for startups have been in EdTech, Smart Equipment Maintenance(IoT) and Stock Advisory(FinTech using AI/ML)</comment>


Hyundai Kona: Pick for North American Utility of the Year - <AUTHOR> https://www.freep.com/story/money/cars/mark-phelan/2018/12/29/hyundai-kona-north-american-utility-year/2427315002/ <comment><USER2> We ended up going with the Kia Niro as it had more trunk space and features for the price, and was a hybrid, I do like the looks of those Konas though.

</comment><comment><USER3> As a Portuguese I cant help but think it is an unfortunate name, since it sounds exactly like a particularly rude word</comment>


When It Comes to Voice Identification, the NSA Reigns Supreme - <AUTHOR> https://theintercept.com/2018/01/19/voice-recognition-technology-nsa/ <comment><USER2> And if a human analyst doesn't listen to the full raw original recording, the NSA believes they have never even, legally speaking, 'intercepted' the communication. So automated processing is very important. As is training machine learning systems to profile people on arbitrary and unknown criteria for manipulation. All without ever 'intercepting' anything.

<comment><USER3> > And if a human analyst doesn't listen to the full raw original recording, > the NSA believes they have never even, legally speaking, 'intercepted' the > communication.

Curious where you get this from, was it in a different leak? Sounds like an odd loophole if true.

<comment><USER4> Not sure what _his_ source is, but from the article:

Andrew Clement, a computer scientist and expert in surveillance studies, has been mapping the NSA's warrantless wiretapping activities since before Snowden's disclosures. He strongly believes the agency would not be restrained in their uses of speaker recognition on U.S. citizens. The agency has often chosen to classify all of the information collected up until the point that a human analyst listens to it or reads it as metadata, he explained. "That's just a huge loophole," he said. "It appears that anything they can derive algorithmically from content they would classify simply as metadata."

</comment></comment></comment><comment><USER3> Interesting, the included "Tips for a successful QRC" classified newsletter article ([https://assets.documentcloud.org/documents/4351995/2007-10-0...](https://assets.documentcloud.org/documents/4351995/2007-10-06-Tips- for-a-Successful-Quick-Reaction.pdf)) was referenced directly by NBC News back in 2015 in a report about NSA tapping Iranian leadership phones / bugging their hotel rooms when they came to the USA ([https://www.nbcnews.com/news/us- news/secret-document-shows-n...](https://www.nbcnews.com/news/us-news/secret- document-shows-nsa-spied-iran-un-delegation-new-york-n431861)), but NBC apparently never published the source document at the time.</comment>


Why TCP Over TCP Is A Bad Idea - <AUTHOR> http://sites.inka.de/bigred/devel/tcp-tcp.html <comment><USER2> Learned this the hard way while setting up OpenVPN a few years ago. In the configuration file, there's an option to use TCP as the transport protocol, and being young and naïve, I figured that it was best to have a reliable protocol underpinning my VPN.

What I didn't stop to consider, was that all of the traffic going over the VPN was also TCP, and as such was reliable enough on its own.

Took me a week to figure out why connections would drop randomly, transfers would magically slow down and speed up, and all other forms of network-based mayhem.

<comment><USER3> Unfortunately it's not always feasible to route UDP properly everywhere. I'm currently using OpenVPN over TCP because the NAT here won't let me punch a hole for UDP, so I can assert that, while not ideal, it works well enough for web browsing assuming you have a good enough internet connection to back it up.

<comment><USER4> TCP minions is there to solve precisely this problem:

[http://dedis.cs.yale.edu/2009/tng/papers/pfldnet10-slides.pd...](http://dedis.cs.yale.edu/2009/tng/papers/pfldnet10-slides.pdf)

TCP over TCP works well enough as soon as your packet loss is small enough to be within the fast retransmit. As soon as you have to timeout, all bets are off.

<comment><USER3> Thanks for this link, it's an interesting read. Where can I find out more about this TCP minion? The slides don't mention any external reference and Google only brings me back to this PDF.

<comment><USER4> Catch up with Jana on twitter @janaiyengar to check if he has more details to share.

I think having minions is a great idea to get the networking out of (TCP|UDP) ghetto.

</comment></comment></comment></comment></comment><comment><USER5> Similar to why TCP over any medium subject to packet loss for reasons other than contention is a bad idea... say random radio noise on wireless. You'll end up with TCP slowing down to a crawl trying to correct for what it was designed for - contention, when it's really just random loss - so the best move would be to just keep going.

<comment><USER6> Doesn't wifi include retransmission (at the media layer!) for this very reason? (Yes, it's ugly.)

<comment><USER7> Contrast that with wired ethernet that includes retransmission in media layer as a solution to congestion (the retransmission algorithm works only for congestion and other causes of packet loss on wired ethernet ar insignificant).

<comment><USER6> Good point.

</comment></comment></comment></comment><comment><USER8> Interestingly enough, in the opposite direction. ICQ chose to do their protocol over UDP, but basically re-implemented TCP into their protocol.

<comment><USER9> In the old days (I'm thinking using the Miranda client especially) you could disable this confirmation though. Made sending messages very fast, but you never knew _for sure_ that your recipient got them.

Alas poor ICQ, it was so fantastic (it's how I met my wife)

</comment></comment><comment><USER10> Unfortunately, I think this is fundamentally how 3G works, isn't it?

Wich is why carriers around the world are all melting down as soon as their customers start using the 3G service they're paying for. And somehow the "network experts" at AT&T (or in my case, Vodafone) never learned from the exact same issues when the whole world was tunneling tcp over ppp/slip back in the late '80s...

<comment><USER11> At least as relating to WCDMA/UMTS, I don't think it's technically TCP over TCP.

TCP is encapsulated in PDCP for the wireless portion of the transmission, and the header's are compressed to hell (using RFC 2507).

On the CDMA and CDMA2000 side of the house (I have no idea about LTE), it's using a similar encapsulation, but our good friend PPP makes an appearance.

I'm pretty sure that the wireless data networks melting down is from a combination of too much density per tower (in cities) and insufficient upstream connectivity.

<comment><USER10> OK, I'm probably misunderstanding the cellular details...

I do however expect the issues alluded to here:

[http://www.computer.org/portal/web/csdl/doi/10.1109/FGCNS.20...](http://www.computer.org/portal/web/csdl/doi/10.1109/FGCNS.2008.159) <http://portal.acm.org/citation.cfm?id=1095972> <http://doc.utwente.nl/62891/>

To have some strong bearing on me seeing crap performance like this:

<http://www.flickr.com/photos/bigiain/5222203911/>

<comment><USER11> No, I think you're right, it seems like there's a discrepancy between the protocol specification and the implementation (I suppose it's not the first time that's happened).

Some quick Googling turns up a lot of people who complain about latency issues with 3G (which bizarrely enough, I've never noticed. Must be the one situation where I'm not being screwed over by ATT), but I don't actually see a consensus around what's responsible for it.

It looks like the SGSN is the likely culprit, as I see some proposals to bypass it completely (or install a Gateway when PDP is detected).

Those ping times are rough, I'd be pissed too if I saw that.

</comment></comment></comment></comment><comment><USER12> If someone really wanted to do TCP over TCP (say, because UDP packets are blocked), couldn't they build something just like TCP but without retransmits? Does this already exist in some pile of code somewhere?

<comment><USER13> TCP does congestion control + reliable delivery. Retransmits help reliable delivery. So, TCP without retransmits is basically a datagram protocol that does only congestion control. DCCP does precisely this and its congestion control is TCP friendly. It's available in Linux afaik.

        http://en.wikipedia.org/wiki/Datagram_Congestion_Control_Protocol

        http://read.cs.ucla.edu/dccp/

<comment><USER14> See also: SCTP

<http://en.wikipedia.org/wiki/SCTP>

</comment></comment></comment><comment><USER15> See also: <http://en.wikipedia.org/wiki/End-to-end_principle>

</comment><comment><USER16> Scary thing is, I'm sure I read this article nearly ten years ago. I remember creating a few of these PPP over SSH VPNs as well, though mainly for testing so I can't remember if we actually encountered this issue. Fortunately CIPE came along before I really needed a VPN.

</comment><comment><USER17> In the upper layer, wouldn't it be possible to just drop those retransmitted TCP packets again by the tunneling application?

</comment><comment><USER18> I thought this was going to be something like when I ssh into a remote system and run 'tcpdump' without filtering out port 22. :)</comment>


What Is Zig's Comptime? - <AUTHOR> https://kristoff.it/blog/what-is-zig-comptime/ <comment><USER2> I love Zig and have played around a bit with it this summer. I do really wish the standard library was better documented though. Think I saw that would be coming soon though so i hope I'll have a even better time with it when I come back to it next time. I would call myself an intermediate programmer with ok knowledge of C and it was for me sometimes hard to understand how I would do some stuff in Zig. Most things are very much the same but with some small changes that I understand why they are there but trip over the differences when trying to do certain things. Besides stdlib documentation I would also want some better examples, but that is probably something that cones with larger adoption. I find Zig together with Rust as a really strong combo of languages that makes one hopeful for the future of system programing.

</comment><comment><USER3> While comptime looks extremely powerful, I'm really not a fan of how it's used for unconstrained generics. This is the same problem I have with C++ templates where an incorrect use of a generic function would result in an explosion of bizarre undescriptive template errors. Sure you can write these type asserts yourself, but it's time consuming and how many developers will actually do it and get it right? I don't know, maybe it's really not that big of a deal, but I much prefer how Rust does this using traits as type constraints (although at some cost of complexity, e.g. Eq, PartialEq, Ord, PartialOrd). Not to mention that by using constraints on the type system level, you actually get useful type signature documentation on what you can or cannot pass to a function.

<comment><USER4> For one, Zig's error reporting is more friendly than C++ and will continue to get better. For another, it's a tradeoff, but the fact that the language is so much simpler than C++/Rust and compilation faster gives you a lot of headroom elsewhere (when the development cycle is faster, it's easier to focus your resources where they matter most _to you_ ).

Of course, language preference is personal and aesthetic, and different people have different preferences.

<comment><USER5> Zig is a simpler language, but that simplicity comes at a cost: the memory bugs that exist in C also exist in Zig. _Users_ bear the cost of the programmer using a simple language.

Rust is a more complex language, but it eliminates a number of classes of memory error. In this case, the programmer bears the cost of users having safer programs.

Although I find Zig very interesting—and I wish Andy the best of success with it—the trade-off that the Rust offers is more in line with my values and my ethics.

<comment><USER6> > the memory bugs that exist in C also exist in Zig.

No, they don't. See Zig's release-safe mode.

Also: [https://news.ycombinator.com/item?id=17184929](https://news.ycombinator.com/item?id=17184929)

> the trade-off that the Rust offers is more in line with my values and my > ethics.

By the way, it's awesome that you like Rust, but there's no need to imply there's something ethically wrong with Zig. Depending on the platform you're targeting, you may yet find a use for either language.

<comment><USER7> release-safe doesn't prevent all memory bugs.

<comment><USER6> Sure, but then not even "safe" languages like JavaScript will prevent all memory bugs.

And to be fair, Rust does introduce memory issues of its own in terms of allocation strategy. For certain projects, Rust would not be considered "safe" with respect to memory.

Zig's release-safe mode is worlds away from "the memory bugs that exist in C".

See also: [https://github.com/ziglang/zig/issues/2301](https://github.com/ziglang/zig/issues/2301)

</comment></comment></comment></comment></comment></comment><comment><USER8> Haxe's macro is similar. It can run arbitrary code during compilation. One useful thing to do is to get the current git commit hash and inject it into the program: [https://code.haxe.org/category/macros/add-git-commit-hash- in...](https://code.haxe.org/category/macros/add-git-commit-hash-in- build.html)

</comment><comment><USER6> Zig is worth supporting. Andrew Kelley, the author, was recently accepted into GitHub's Sponsors program. This means for every $1 you contribute, GitHub will match your donation for the first year:

[https://github.com/users/andrewrk/sponsorship](https://github.com/users/andrewrk/sponsorship)

<comment><USER9> That's interesting. Looks like it's a limited beta right now, I wonder if anyone will be able to enable Patreon-esque sponsorship for their projects in the future and what the requirements will be. Also very generous of Microsoft to match donations.

<comment><USER10> There's nothing generous about it. Microsoft is well behind Patreon and this is a way to get creators to swap to using GitHub for donations.

<comment><USER11> Is there something to stop creators using both?

<comment><USER10> Not in theory, but in practice why would any creator encourage people to give them money on a platform that pays out half of the other one? They would push all people to the one with double payouts.

</comment></comment></comment></comment></comment><comment><USER12> Interesting. I would love to see a similar article on memory management in Zig.

</comment><comment><USER13> What can Zig _not_ do at compile time?

<comment><USER14> It cannot do code generation.

<comment><USER15> Good!

</comment></comment></comment><comment><USER16> Considering that many compilers are written in the language they compile I was surprised by the Zig compiler being written in C++.

Does anybody know the reason?

<comment><USER17> The stage 1 compiler is written in C++, but the Stage 2 compiler will be Zig: [https://github.com/ziglang/zig#stage-2-build-self-hosted- zig...](https://github.com/ziglang/zig#stage-2-build-self-hosted-zig-from-zig- source-code)

Eventually, i'll be Zig all the way down, but the language needs to get to the point where it can actually support writing a compiler for itself (and Andrew has some big plans for the way the compiler should work from what I understand).

<comment><USER18> Hopefully stage1 will remain indefinitely for bootstrapping, like LDC's ltsmaster.</comment></comment></comment>


Archaeologists Find 22 Ancient Greek Shipwrecks - <AUTHOR> http://news.nationalgeographic.com/2015/11/151103-greek-shipwreck-find-trading-route/ <comment><USER2> A recent AMA with Peter Campbell, co-director of the research project: [https://m.reddit.com/r/science/comments/3qyhtd/science_ama_s...](https://m.reddit.com/r/science/comments/3qyhtd/science_ama_series_im_peter_campbell_codirector/)</comment>


Intel and Counterintel in Eve Online - <AUTHOR> http://ask.metafilter.com/278002/Are-there-any-hobbyist-espionage-groups#4031599

<comment><USER2> The complexity and intensity of this kind of "metagaming" in sandbox-style MMOs can become absolutely mind-bending.

I was "head of intelligence" for a large player organization in an open MMORPG similar to EVE. Our organization was modeled after Goonswarm, and our intelligence division was modeled very closely after GIA ("Goonswarm Intelligence Agency"). Planting spies and rooting them out, using intelligence to gain political and diplomatic leverage, training defectors on how to turn some of their peers, using screenshots of chat logs and forum posts and recordings of voice comms to embarrass and stir dissent in the enemy, turning the tide of battles by ambushing the enemy or tricking them with false intel, and in general utilizing spies to further global long-term strategies.

To this day that was probably one of the most cerebral, challenging, and fun experiences in my life, and my real career often pales in comparison.</comment>


DuckDuckGo Sponsorship By The Numbers - <AUTHOR> http://www.posterburner.com/Blog/BlogPost/DuckDuckGo-Sponsorship/

<comment><USER2> Not only did PosterBurner get good results from the sponsorship, but they also get to write an article about the results and bring in still more sales and PR.

It sounds like an all-around benefit to me.

<comment><USER3> I dunno, but it doesn't sound like they got good results.

Ignore the reddit and PRWeb based sales, since it's not really correlated with the DDG spend. And you only have 22 sales originated directly from DDG for a total of $550 in sales.

So they lost half their money, and that's before we talk about their costs. And I'm sure they have a much better profit margin than most businesses.

<comment><USER4> Hey vaksel,

I can your point about the PRWeb sales, but the reddit ad pct that I attributed to DDG sponsorship was the percentage above average and we've been advertising on Reddit for a few months now. Also, that was also immediate sales. We have a very good percentage of customers that reorder, especially around the holidays, so the final number will be much higher, probably by a multiple of 3 or 4.

</comment></comment></comment><comment><USER5> I'd be interested in sponsoring DuckDuckGo, but I'd want to make sure I got referrer information.

Does anyone know if this is because DDG is using a redirect in between the link on their site and the advertiser's site, or is it just down to lack of set up on PosterBurner's end?

The ability to track and analyze is critical for a $1000/week spend.

<comment><USER6> I believe DDG doesn't set a referrer for privacy reasons.

<comment><USER7> I think the technical reason is that DDG defaults to search over HTTPS (for privacy reasons), and most browsers won't set the referer HTTP header when moving from HTTPS to HTTP.

</comment></comment></comment><comment><USER8> "DuckDuckGo does not include referrer information in their links. This means that when you click on a link at DuckDuckGo, the site you are going to does not know where you come from."

Assuming they're refering to an ad, and not a search result, why not just link to <http://www.mysite.com/?ref=ddg> ?

<comment><USER9> They probably didn't think of it initially, and then discovered the lack of referrer.

</comment></comment><comment><USER10> $1000 for $1300 in sales seems high, is 75% ad spend normal for the industry ?

<comment><USER11> I imagine there's cumulative effect that will happen: the longer you are a sponsor the more customers that will attract. Also, these new customers might come back at a later date.

<comment><USER12> The second sponsor (hostgator.com) has taken this approach. They're sponsoring for two months.

</comment></comment></comment><comment> mike-cardwell You do see duckduckgo.com in the referer, just not the search term. Although, if the person searches via the https version of the website, you wont see the referer unless you're using https your self.

And of course there is always the concept of a landing page, which other people have mentioned.

It's easy to track clicks for a campaign like this.

</comment><comment><USER13> _We spent $1000 dollars to get $1300_

So reddit advertising was free or am I missing something?

<comment><USER14> Reddit advertising ad been bought previously and independently, so yes, it was free in a sense. No additional cost was incurred, and the author made sure to point out that it might not have been a great deal if their situation had not included complementary advertising (or that's how I understood the blurb about strategy, anyway).</comment></comment>


Superfast Nike shoes are creating a problem - <AUTHOR> https://www.nytimes.com/2019/10/18/sports/marathon-running-nike-vaporfly-shoes.html <comment><USER2> "A 2018 New York Times data analysis based on public race results uploaded to Strava, the athlete-tracking and networking company, found that runners in Vaporflys ran 3 to 4 percent faster than similar runners wearing other shoes." This doesn't seem causal... Runners that were on average going to be 4 percent faster than the population mean anyway may also be runners that like buying the latest and greatest vaporflys. With that being said, I would have trouble designing an experiment though

<comment><USER3> Get a bunch of runners, hand them random shoes. Have em run and time it. Repeat over the course of a couple days, having a randomised distribution of shoes each day. For bonus points use covers on the shoes so people don't know which shoes they are wearing.

</comment></comment><comment><USER4> I wish more sports would embrace technology the way F1 does. Waiting for people with random mutations, or ready to put huge amount of time for training, or crazy enough to take illegal and harmful drugs, in pursuit of hundredth of a second is not very interesting and not very useful. But if sports were a competition between companies creating better shoes, better exoskeletons, better and safer performance enhancing drugs the society would at least get something useful out of sports.

<comment><USER5> > I wish more sports would embrace technology the way F1 does.

Very tightly constrain and regulate them? F1 hasn't been a technological free for all since the early 80s when FISA/FIA started constraining manufacturers (ban on ground-effect aerodynamics, fuel tank limitations, boost limitations and ultimately turbo ban[0], ban on multiple automated driver assistance, …).

As of 2019, engines are regulated down to materials, we're down to a single allowed tyre supplier (which has 5 dry-weather compounds but only provides 3 choices per race), as well as a specific car and (driver, seat) weight (660kg and at least 80kg respectively).

F1 very purposely constrains technological innovation — again since the 80s — specifically to avoid technology being a bigger victory factor than driver skills.

[0] until their reintroduction (and mandate) in 2014

<comment><USER6>
      F1 very purposely constrains technological
      innovation — again since the 80s — specifically to
      avoid technology being a bigger victory factor than
      driver skills.

I'm not sure that that's a reasonable analysis. The restrictions aren't there to keep humans important. They're there to keep humans _alive_.

I read an article once in which an F1 team's lead engineer claimed that a car with no limitations would average 300 hundred miles per hour around a track that's identical to a current track but turned so all the curves were banked 90 degrees _to the outside_. I believe it. Gas turbine, vacuum system, active cooling on the brakes, everything fully shrouded and active aerodynamic surfaces everywhere, electronic stability and traction controls...

The thing is, humans aren't getting that much faster or stronger, and we know that these unlimited cars would be unmanageable. Restrictions seem to be tightened in direct response to severe accidents that increase in frequency as engineering advances. It turns out that letting cars get any faster than they are right now doesn't make human skill irrelevant, it just _gets people killed_. Modern cars, as they constrained as they are, are already at the limits of human performance.

And this isn't surprising! The most maneuverable jet fighters in the world are built to turn at about 10g. The most maneuverable fighters built in WWII were _also_ built to turn at about 10g [1, 2]. Humans stop functioning around... 10g. If you had an aircraft racing league, letting teams build higher- performance planes wouldn't result in victory going to the highest-performance plane. Higher-performance planes would result in victory going to the pilot most willing to die. Which is _precisely what we see_ in air racing: The Red Bull Air Race rules instantly disqualify racers that pull 10g for more than half a second or 12g ever [4].

1: [https://en.wikipedia.org/wiki/Lockheed_Martin_F-22_Raptor#Sp...](https://en.wikipedia.org/wiki/Lockheed_Martin_F-22_Raptor#Specifications_\(F-22A\)) 2: [https://ww2aircraft.net/forum/threads/insight-into-the- magni...](https://ww2aircraft.net/forum/threads/insight-into-the-magnitude-of- forces-involved-in-dogfights-during-ww2.11822/) 3: [https://en.wikipedia.org/wiki/G-LOC#Thresholds](https://en.wikipedia.org/wiki/G-LOC#Thresholds) 4: [https://en.wikipedia.org/wiki/Red_Bull_Air_Race_World_Champi...](https://en.wikipedia.org/wiki/Red_Bull_Air_Race_World_Championship#Did_Not_Finish) 5: [https://en.wikipedia.org/wiki/Electronic_stability_control](https://en.wikipedia.org/wiki/Electronic_stability_control)

<comment><USER5> > I'm not sure that that's a reasonable analysis. The restrictions aren't > there to keep humans important. They're there to keep humans alive.

Nah, that's an excuse FIA uses because it realised that's how it could put restrictions in place.

If it were solely about safety, FIA would restrict the capabilities of the machines, not their design details.

> I read an article once in which an F1 team's lead engineer claimed that a > car with no limitations would average 300 hundred miles per hour around a > track that's identical to a current track but turned so all the curves were > banked 90 degrees to the outside.

So F1s could average 300mph on an identical track if it were nothing like the existing track. Gotcha.

> Restrictions seem to be tightened in direct response to severe accidents > that increase in frequency as engineering advances.

That's really not true. FIA does regularly impose safety features or restrictions (e.g. halo, or wheel tethers) but most of the restrictions have nothing to do with safety.

> It turns out that letting cars get any faster than they are right now > doesn't make human skill irrelevant, it just gets people killed.

So… don't do that? If your goal is the safety of the pilot you put limits on the _performance characteristics_ of the car (top speed, acceleration, …). You don't mandate the materials the turbo can be built out of.

> Higher-performance planes would result in victory going to the pilot most > willing to die. Which is precisely what we see in air racing: The Red Bull > Air Race rules instantly disqualify racers that pull 10g for more than half > a second or 12g ever [4].

Right, so for safety reasons RBAR restricts the _performance characteristics_ of competing planes.

FIA does not do that, it restricts the _design details_ of the cars.

I'm not saying it's bad, mind, just that F1 / the FIA has a very limited and restrictive embrace of tech.

<comment><USER7> >So F1s could average 300mph on an identical track if it were nothing like the existing track. Gotcha.

That's not how I read it. He said 90 degrees to the -outside-. Which would be significantly more difficult than the current track and seemingly impossible until you consider that the air downforce would need to overpower the centrifugal force lifting them away from the track.

But perhaps 90 degrees to the outside doesn't mean what I think it means.

<comment><USER8>
      A Formula 1 car can drive upside down .

[https://uk.sports.yahoo.com/news/can-an-f1-car-drive-on- the-...](https://uk.sports.yahoo.com/news/can-an-f1-car-drive-on-the- ceiling-215241628.html)

</comment></comment></comment></comment></comment></comment><comment><USER9> I mean they lost me when they said the sole of the shoe operated like leg muscles that never tired, I'm mean seriously these probably account for half of 1% increased performance and I don't believe other manufacturers won't level the playing field too. I really don't see better footwear as cheating or the authors belief that running shoes haven't changed since the 70s. Poor journalism IMO.

<comment><USER10> Too bad they lost you there, since a few paragraphs down they link to their 2018 study showing that the number is apparently closer to 4%.

<comment><USER9> So that's just not true because times haven't dropped 4% have they?

<comment><USER11> Top times have not, but the charts in the article _clearly_ show a 3-4% difference across the entire data set. Why are you so determined to ignore data?

<comment><USER9> Okay fair enough, do we know why the top times haven't changed so much, it would be interesting to know why.

<comment><USER12> Most top marathoners are not sponsored by Nike and don't wear its shoes.

Those that do, like Galen Rupp, have not completed many marathons since the shoes were introduced but did see improvements in the probs of the races they ran before dropping out.

</comment></comment></comment></comment></comment></comment><comment><USER13> The shoes do not add any energy to the system. All energy is provided by the runner. I think they shouldn't be regulated.

<comment><USER14> Just to be a devils advocate, but neither do springs. But springs are specifically banned in professional running shoes.

</comment></comment><comment><USER15> This just seems like an add for Nike. The reason all the fastest runners are using Nike shoes isn't necessarily due to superior performance as much as the effects of superior sponsorships.

It would be interesting to compare times with other shoes under controlled conditions, but likely there are hundreds of factors more important that small differences in the shoes. And why would Nike allow scientific comparison when they all-ready payed all the athletes millions to side with them on the conclusion?

The are other important factors, but no-one is pouring millions into marketing "Nike brand pacer support with efficient patented wind-breaking formations".

<comment><USER16> >It would be interesting to compare times with other shoes under controlled conditions, but likely there are hundreds of factors more important that small differences in the shoes

The shoes reduce oxygen consumption by 4%, which translates to 2 minutes in a marathon. They are the primary contributor to the sub 2 marathon stunt. The effort in a regular race without those shoes would have produced about a 2:03. Shoes -2 minutes, drafting effects from the lead vehicle and contrived pacers, another minute.

<comment><USER12> Kipchoge already has a legit world record in the 2:01:xx range, run in an actual race.

The pacers and shoes combined only took off roughly a minute in the first 2 hour attempt.

<comment><USER15> Exactly. And I honestly don't believe anyone even Nike would claim the shoes to be an bigger factor than the pacers.

</comment></comment></comment></comment><comment><USER17> Non-paywalled link, anyone?

<comment><USER18> Pressing stop before the paywall appears seems to bypass it.

<comment><USER19> Today's MVP award goes to you! Thank you!</comment></comment></comment>


CIA's Database of Protests and Protesters and a Pentagon Riot - <AUTHOR> https://glomardisclosure.com/2016/07/19/how-cias-database-of-protests-and-protesters-lead-to-a-pentagon-protest/ <comment><USER2> The article's title is clickbait - the CIA database didn't "lead" to the Pentagon Riot.

As claimed by the article, the Pentagon Riot was an event precipitated by a protest which the CIA database had logged. The article alleges that this information could have been used to de-escalate the protest or tailor the response to it, but there's no causal link between the CIA database's existence and the protest happening.

<comment><USER3> The link is that they gave one of their agents authorization for the levitation... but then stocked an entire military unit there from Fort Bragg to escalate the situation into a riot for further study.

</comment></comment><comment><USER4> > the National Mobilization Committee to End the War in Vietnam ... attempted > to levitate the Pentagon.

In what part did they actually mean to literally mean to "levitiate" the pentagon - to raise it into the air by magical means.

And how much of it was to cause _levity_ i.e. "treat a serious thing in a light way with humour or lack of due respect", and raise consciousness, poke fun at the military and generally stir things up?

<comment><USER5> _> And how much of it was to cause levity_

This seems highly likely to me. Having interacted with a fair few people like this, it's easy to underestimate how much they see such occult practices in terms of irony and poetic language. They are most assuredly not making a naive attempt at doing what physicists do, which is the tempting assumption. (Sometimes it's correct of course.)

The emphasis in "magic words" is usually more on the words than the magic.

<comment><USER6> There's definitely a sense of humor to efforts like this - a realization that the whole thing is so absurd that it's worth going all the way to impossibility.

When you're setting out to oppose bureaucracy and militarism, poetry and magical techniques make a satisfying _thematic_ counter; you can adopt them for that purpose without any real belief that they _work_.

</comment></comment></comment><comment><USER7> Oh my stars, was the CIA doing something questionable again. How shocking. The US govt so rarely overreacts to imaginary threats by spying on its citizens.

</comment><comment><USER8> Out of curiosity, what's the official perspective anyway? Is the CIA legally entitled to conduct such activities within US borders?

In some countries like Germany the foreign intelligence agency is not allowed to gather intelligence in their own country, only a separate counter- intelligence agency may, so I'm wondering whether this is the same in the US or not. Theoretically speaking, of course.

<comment><USER9> The CIA's statutory mandate is limited to foreign intelligence. Virtually everything the CIA does within US borders is illegal.

<comment><USER10> It's been ruled legal to target Americans if they drive a Japanese car, or have ever watched a movie with subtitles.

<comment><USER11> Do you have any case law that backs this up?

<comment><USER9> Yes, it's well established. See below, in subsection dealing with activities within the United States.

[https://www.aarclibrary.org/publib/church/rockcomm/pdf/RockC...](https://www.aarclibrary.org/publib/church/rockcomm/pdf/RockComm_Chap5_Authority.pdf)

<comment><USER11> Well this is my sad TIL for the day.

</comment></comment></comment></comment></comment></comment><comment><USER12> Can't even read it. The contrast is terrible.

<comment><USER13> I was expecting something like grey text on a black background from this comment, but don't pay attention to him, the contrast is fine.

<comment><USER14> The article is mostly light gray text on white background, really hard to read for me as well.

</comment></comment></comment><comment><USER15> Its for the best, if the protesters had completed the exercism ritual, Iog Sothoth would have been free to roam the world once more

<comment><USER16> >Iog Sothoth

It's the Pentagon, so surely you mean Shub-Internet

[http://www.catb.org/jargon/html/S/Shub- Internet.html](http://www.catb.org/jargon/html/S/Shub-Internet.html)</comment></comment>


Show HN: 'Job Tips For Geeks: The Job Search' ebook release - <AUTHOR>

Over the past year the Job Tips For Geeks blog has had some success with the HN crowd - readers may have seen Why You Make Less Money or Why You Didn't Get the Interview.  I have just released my first ebook "Job Tips For Geeks - The Job Search", which is a step-by-step guide to a job search written specifically for software engineers and tech pros.  It is now available for download on several reading platforms on the expected major book sites.
The book is set chronologically and starts on moves to make before you start looking, and evaluates the pros/cons of each search strategy (and introduces a strategy that I think is the future for much startup tech hiring, and involves jobs that don't exist).  Next is the during the search portion (building and submitting resumes, phone screen and interview techniques, how/when to follow-up), and eventually gets to how/when/why to negotiate, resignations, acceptance, counteroffers, and maximizing the time you spent searching.
It's written from a recruiter's perspective, and I know HN loves recruiters.  My writing is typically critical of the profession, and this book includes several of the tricks and techniques recruiters use and how to avoid falling victim to some of them.  I provide the recruiter's 'script' on counteroffers, and the measures taken to prevent them, as well as inside info on lots of recruiter tactics.
More info can be found on the Job Tips For Geeks blog and specifically on http://jobtipsforgeeks.com/book <comment><USER2> I'm not really your target market, but: I can't find a buy button anywhere.

Edit: I see that you say to look on Amazon / the stores for it. You really, really need to fix that and add a link somehow, or at the very least, make it more obvious. Most people are going to skip over the one sentence that says what to do. In general, you should make this book landing page a lot better. You're gonna miss out on a lot of sales otherwise.

<comment><AUTHOR> Thanks for the tip, and working on it. Wordpress (paid version) doesn't allow links to several sites (iTunes, Amazon) which is the major issue.

</comment></comment><comment><AUTHOR> I added a new book page at [http://jobtipsforgeeksbook.com](http://jobtipsforgeeksbook.com)</comment>


Why 'Civilization' is a political masterpiece - <AUTHOR> https://unherd.com/2020/09/why-civilization-is-a-political-masterpiece/ <comment><USER2> I've played every Civilization since the first one, I believe. I think 4 was my favorite, especially since it had the best music. I sing old music professionally, and it was such a treat to enter a new era and hear some of the best musicians in the world singing actual music of the era: [https://www.youtube.com/watch?v=7g7jOKLUus8](https://www.youtube.com/watch?v=7g7jOKLUus8)

(the music in that video is by John Sheppard, a decidedly Renaissance composer (not Medieval, as indicated by the game), but the music is so good that I can absolutely forgive that inaccuracy).

Lately I've been wavering from the series though. My biggest complaint is that every game is so long and requires so much micromanagement in the mid-late game. Even at the fastest setting, a full game seems to take at least 10-20 hours. Sometimes I just want to go through the tech tree in a different world without having to spend such large amounts of time on it.

<comment><USER3> I've noticed that too, I only play one game a year over a couple of days in a single weekend, usually, because of the time commitment.

How long of a CIV game would you like to play? What do you think is worth streamlining out of the experience? What do you think absolutely needs to stay in to get the feeling you want from these types of games? (This goes to anyone who feels it's too long, btw).

<comment><USER3> To be clear, I enjoy a long Civ game from time to time too and wouldn't want Civilization to be a different game. But I'm wondering, as a game designer myself, if there's something worth exploring that's shorter format. There's a lot of those in board game form, but not so much for video games, at least not that I can think of.

<comment><USER4> What about something taking inspiration from the "roguelike" fad? Some of those intend for runs to take < 1 hour and yet still have interesting choices and variation due to randomization. Seems like a plausible fit for a civ- quick. There you often have some randomized choice of features to exploit and don't get access to all of them every run, thereby streamlining the game process.

</comment></comment></comment></comment><comment><USER5> I have spent countless hours on this game (especially Civ 5) - it just felt so deep. It actually triggered quite some interests down the road around archeology, history, military strategy. Reading about some historic character I really often thought "ha - I know this person from Civilization" and the same game has you thinking about things like geographic choke points for someone else's navy and things like that.

I'm really hoping that at some point a version of Civilization will come out with a more realistic AI (I haven't really looked into this but assume that a lot more is possible now than 10 years ago given all recent advancements). To me that felt like the main thing that caused me to lose interest at some point, interaction with AI players was too scripted and a harder difficulty level just meant more units and faster progression for AI players. I never got into multiplayer, I imagine it would be way too slow to keep my attention.

<comment><USER6> Civ5 didn't allow unit stacking which left artillery vulnerable. I couldn't get into it.

Civ 4 4ever

<comment><USER7> I never got that into Civ, so maybe it is mostly my ignorance of 'proper' play speaking, but I actually rather liked the change to non-stacking units as it seemed to make the combat more tactical and less an exercise in simply who had the bigger numbers.

<comment><USER8> The two big problems with it were that a) the computer player coding was just shockingly bad at dealing with it, particularly around any sort of geographic chokepoints, and b) it was incredibly tedious to deal with moving more than a handful of units.

Many other games like Total War series or Age of Wonders dealt with the overall question by having split strategic and tactical game modes, and they're hardly alone in that. Civ5 and 6 tried to keep the bastard child of those two game concepts in the same strategic-map and it just doesn't work that well.

<comment><USER9> There are a lot of subtle consequences of 1UPT as well. You can't let the player produce too many units, or the whole map will lock up. You can't make units too expensive though, or they'll just be hitting next-turn 40 times between each production in the ancient era. So tiny cities have to punch above their weight, and big ones below. Once you do that though you have to heavily penalize expansion. What they really needed was to increase the tile-density of the map several times, give room to maneuver. That would seriously change the city management gameplay though, potentially make it too tedious.

<comment><USER8> I can see a split of using large hexes for cities and strategic deployment but having 7 child hexes inside each strategic one for precise unit movement working out. Effectively limiting stacks to 7 units for combat, and also potentially letting a few groups of units move around each other with multiple turns of micromanagement.

The corp/army mechanic could also be tied into that.

</comment></comment></comment></comment></comment></comment><comment><USER10> In the beginning the earth was without form, and void.

But the sun shone upon the sleeping earth,

And deep inside the brittle crust, massive forces waited to be unleashed.

The seas parted, and great continents were formed.

Mountains arose, earthquakes spawned massive tidal waves.

Volcanoes erupted and spewed forth fiery lava,

And charged the atmosphere with strange gasses.

Into this swirling maelstrom of fire and air and water,

The first stirrings of life appeared.

Tiny organisms, cells and amoeba, clinging to tiny sheltered habitats.

But the seeds of life grew, and strengthened, and spread, and diversified, and prospered.

And soon every continent and climate teemed with life.

And with life came instinct, and specialization, natural selection, reptiles, dinosaurs and mammals.

And finally there evolved a species known as man.

And there appeared the first faint glimmers of intelligence.

The fruits of intelligence were many:

Fire, tools, and weapons,

The hunt, farming, and the sharing of food,

The family, the village, and the tribe.

Now it required but one more ingredient:

A great leader to unite the quarrelling tribes,

To harness the power of the land,

To build a legacy that would stand the test of time:

A CIVILIZATION!

</comment><comment><USER11> Definitely a hugely formative game for me and a lot of other people, that encouraged you to learn the real history while writing your own. While there have been a lot of Civ games, I'd say that there was a "trilogy" of Civ, Colonization, and Alpha Centauri.

As a brit, most of the US history I know comes from Colonization. It also had far more of a focus on the economy; military action was so expensive that it was limited to skirmishes until the War of Independence (although this didn't seem to impair the AI). It was more grounded in real history, although there was a recent controversy when it was pointed out that it had almost entirely erased slavery.

Alpha Centauri was explicitly a sequel to Civ, set after the disastrous fragmentation of the space colonists into warring splinter groups. Inspired by the _Mars_ trilogy, it put a lot of effort into building a narrative universe around the faction personalities. An epistolary novel in help texts. Possibly my favourite of the three, as you could assemble your own modular units in unusual combinations for specific purposes.

<comment><USER12> Much of the Alpha Centauri lore comes from Frank Herbert's "The Jesus Incident" [0]. Nerve runners, living planet, etc.

0: [https://en.wikipedia.org/wiki/The_Jesus_Incident](https://en.wikipedia.org/wiki/The_Jesus_Incident)

<comment><USER13> Oh very cool, I didn't know that, I really like the story bits in Alpha Centauri, I love how each faction has an arc. I have never found another game that scratched the same itch as Alpha Centauri, truly an exceptional game.

<comment><USER14> same, it was a huge part of my child hood. just leaving this here in case any other SMAC fans havent seen it [https://paeantosmac.wordpress.com/](https://paeantosmac.wordpress.com/)

</comment></comment></comment></comment><comment><USER15> While Civilization games are fun for new players, ultimately they are quite flawed:

\- In Civ 1-3 infinite city sprawl is optimal, which is tedious and unfun

\- In Civ 5-6 one-unit-per-tile creates gimmicky non-strategical combat, forces you to move units individually and is very hard for the AI to use

\- All the original versions have horrible AI (so bad that you could reasonably request a refund), although the Better AI mods for Civ4 and Civ5 have somewhat passable AI

\- While the early game is really fun since you have few very impactful decisions, all versions get very tedious by the mid/end-game where you need to make a ton of minor decisions for every city and unit in the empire

The last problem is especially hard to fix, and I don't think any similar game has solved it.

<comment><USER16> I always liked Alpha Centauri the most out of all these games.

I don't think it has any of these problems except for maybe the last (you can automate most repetitive actions, but the control is somewhat too coarse).

<comment><USER17> Alpha Centauri is one of my all time favourite game. Out of curiosity, does anyone know if it is possible to replicate the Human Hive strategy from Alpha Centauri in other Civ games?

</comment></comment></comment><comment><USER18> I probably played Civ1 the most, on the Amiga back in the day.

IMO, Civ II was the best in the series, and if I find myself craving a game of Civ, I go for FreeCiv. Never tried Civ VI, the last few iterations just did not hook me the way the original did. If I'm looking for a good world sim, I like the Paradox series of games - Europa Universalis, Victoria, etc.

<comment><USER19> Similarly played Civ1 on Amiga 500 a lot. Didn't know how to create save disks, so just left it running overnight. No game again reproduced that feeling of marvel, getting to know its mechanics first time.

It does feel that Paradox games create a better simulation. Even Crusader Kings, albeit on a slightly different level.

<comment><USER20> I like Crusader Kings more than all the others because it results in amazing stories as it's character-focused rather than focused on faceless nations (Victoria, HOI, EU, etc.).

I can tell you about the time I conquered most of east India and became a king, swore fealty to the emperor of Tibet for protection, married my daughter to his son for a non-aggression pact with him, then somehow my daughter later ends up becoming empress, and one of my fellow vassals (my daughter is my liege at this point) starts pushing my _wife's_ weak claim on the empire of Tibet in a civil war...

And I have tons of stories like that. I have basically none from other grand strategy and civilization management games in comparison.

</comment></comment></comment><comment><USER21> Civilization was apparently inspired by Empire.

[http://classicempire.com/](http://classicempire.com/)

(Yes, I wrote Empire.)

<comment><USER22> Empire was an awesome game! I spent hours and hours on Empire ... until Civilization came out unfortunately.

Thank you so much Mr Bright! You deserve much love!

<comment><USER21> Love won't pay my bills, I want money! Just give me money!

\-- apologies to the Flying Lizards

<comment><USER23> A+ obscure music reference!

<comment><USER21> It's my theme song!

</comment></comment></comment></comment></comment><comment><USER24> One thing about civ which feels a bit annoying in missed potential is the lack of divergent tech and societal paths when going different directions and choices in directions. Say that if you are in a Inca like geography you have no real reason to develop the wheel until you expand far because it just isn't worth it. Or at every level being able to choose between "swarmer" and "warrior elite" strategy where what pays off varies by tech level just like real life.

I understand some of it is design "awkwardness" related from sheer detail of modeling oddball situations alone. Combined with gameplay of "traps" from the freedom to try things which seem like a good idea but run into problems or silly exploits which work mechanically but make no sense.

<comment><USER25> I think Stellaris does tech in an interesting way. Tech trees are much flatter than civ, and you can't outright pick a specific tech to work - you have a choice from a random set, and when you finish that one you get another random set.

What shows up in that set is also based upon what is in your empire's space.

</comment></comment><comment><USER26> For those looking for a stripped down Civ, take a look at Polytopia (iOS / Android). They've done a mostly brilliant job in creating a very minimalistic Civ-style 4x game. Has two modes: a 30 turn game in which the player with the highest score wins. Building wonders and temples gives more points than conquest, so that mode is a very stripped down version of a cultural victory goal. And then there's the free-for-all mode, with no turn limitations and the only possible victory is conquest. I mostly play the latter.

There's a simple tech tree. Diplomacy is done in an interesting way, and I wish more games would emulate it. There's no direct negotiations, relationship scores, or anything like that. Instead, you have to measure how they feel about you by the way they act. They give you a greetings when you first meet. If they laugh at you or are suspicious, then they'll probably attack immediately. If they worship you or condescendingly pat you on the head, then they won't attack for a while.

And this is also built on by judging them based on further actions. If you move a unit adjacent to theirs, and they don't attack it, then you know they're trustworthy for a time. And you can subtly manipulate their feelings towards you by doing things like not counter-attacking even when they're attacking you. This is useful in a multi-front war when you're losing. You can make the decision to concentrate an offensive on one front when your defenses can possibly hold on a second front. If the enemy isn't hellbent on your destruction, they'll possibly just stop attacking and do something else. If you accurately guess that they hate another nation more than they hate you, then attacking the hated nation will get them to consider you acceptable. It's a bunch of big gambles and an interesting ones. Judging the other nations' attitudes towards you by intuition alone.

That definitely adds a little nuance to the conquer-the-world bits. Most games are over in 30 minutes or less, though occasionally they stretch out when you're evenly matched. Even then, it's rarely more than an hour.

<comment><USER27> in my opinion, "Hexonia" is a slightly better variant (at least on Android). The graphics are better, it uses a hex grid instead of a square grid, and the game play is slightly better.

Polytopia is better in some ways - some of the specialty races introduce completely new concepts/units/gameplay mechanic, while all the Hexonia races are essentially the same with only some units being different between them.

Try both if you're curious. neither of them have ads that break gameplay.

</comment></comment><comment><USER28> Wish we better enabled others to dabble in building modest world sims.

It's hard when there's a whole tech level grind that also has to tick along in the background, fueling the sense of growth & achievement & pushing players ahead. But collecting resources, establishing population centers, weighing civil & diplomatic & religious opinions against one another... seems like a really interesting proposition that we make not just sandboxes but sandbox makers.

<comment><USER29> > It's hard when there's a whole tech level grind that also has to tick along > in the background, fueling the sense of growth & achievement & pushing > players ahead.

I have a real problem with how tech levels are implemented in Civilization, at least in the variants I'm familiar with: There's just a few ways to progress, and advances are always better. Technology is not fitted to the environment, like how wheels don't make a lot of sense on roads which are rocky and often stairstepped up steep slopes; nope, the whole concept of "Inventing Wheel" _not_ being a necessary step to further advancement is lost on the game, even if it's empirically possible to build advanced civilized societies without them. It's like it's insulted by wheel-less-ness, and never understands that facts don't care about its feelings.

Further, there's no trade-offs: Iron swords are better than bronze, and never you mind that _common_ iron is _worse_ than bronze; unless you have truly outstanding Damascus steel, you're using sponge iron at best. Of course, sponge iron doesn't require tin, so if you're cash-strapped or just lost a tin-producing province, well, Iron Age ahoy!

[https://www.e-education.psu.edu/matse81/node/2129](https://www.e-education.psu.edu/matse81/node/2129)

I wouldn't care about this stuff if it weren't for the pernicious effect of these games on peoples' _de facto_ history education. They think that if it works that way in Civilization, it must have worked that way in reality, and it's hard to remove a bad education.

<comment><USER30> > Further, there's no trade-offs: Iron swords are better than bronze, and > never you mind that common iron is worse than bronze; unless you have truly > outstanding Damascus steel, you're using sponge iron at best.

In civ 4, there was a tradeoff, bronze enabled ax warriors while iron enabled swordsman. Ax warriors were weaker than swordsman, but they received a bonus again melee units, ensuring they'd win a battle against swordsman.

<comment><USER31> And yet historically nearly everyone used spears.

</comment></comment></comment></comment><comment><USER32> I think that Errant Signal's video on Civilization offers a really interesting counterpoint to this view. When you think about it, despite it's cheap cosmopolitanism, it has an extremely narrow contemporary liberal view of civilization, government, technology and "progress". I think it's worth looking into.

[https://youtu.be/xBlEscMLjy0](https://youtu.be/xBlEscMLjy0)

<comment><USER33> I don't know. This feels pretty similar to criticizing Call of Duty for not exploring peaceful resolution of conflict enough. Civilization is just a skin on a resource management game; popular history is the theme. Criticizing it for not adequately exploring the intricacies and assumptions of western history is missing the point.

<comment><USER34> If you can, as TFA, plumb it for deeper political meaning, you can also, like Errant Signal, criticize it for that political meaning being a glorification of a rather weird, authoritarian-nationalist (nearly fascist, with the game's single-minded obsession in directing all resources, human or otherwise towards the service of a single-purpose state) world view, _that does not even make any sense_ in 95% of the time periods that the game covers.

Your argument can certainly be made, but it can also be turned against the article this thread is about, with similar levels of success.

Errant Signal is not saying that the game is bad. It is saying that the political picture its mechanics paint isn't one with any depth to it.

</comment></comment></comment><comment><USER35> Alpha Centauri is where it's at for me.

Some gushing: [https://paeantosmac.wordpress.com/](https://paeantosmac.wordpress.com/)

<comment><USER36> Ach, had such hope for the remake. Alas :/

Kinda hoping there'll be a new attempt now that core Civ has climate change, since those mechanics could (I hope?) be repurposed for terraforming.

</comment></comment><comment><USER37> 𝘭𝘢𝘶𝘨𝘩𝘴 𝘪𝘯 𝘊𝘳𝘶𝘴𝘢𝘥𝘦𝘳 𝘒𝘪𝘯𝘨𝘴

<comment> jorge-d CK is really great, but if one really like to learn things about history / geopolitics while playing a game I don't thing any game is as rich as EU4 :)

<comment><USER38> I never really gave it a fair chance because it seems like more like an optimization exercise than actual experience.

The absolutely mind blowing part about CK for me is that I DO NOT MIND LOSING at all. Of course I am playing on Ironman always so there is no /save/reload. It is so AMAZING damn.

For example: I would start the new dynasty and the whole thing collapses spectacularly after 3rd generation - great -wow - I had a blast.

I spend like 2 weeks on and off conquering half the world, then one evening I get bored, start doing crazy stuff and everything collapses - wow - what a ride.

I start out small, my wife dies can't find a fertile concubine my brother assassinates me, my game session is suddenly over in like 30 minutes. I am absolutely delighted. I don't feel like I should correct it all, salt the earth, become the richest king ever etc. etc. It just doesn't matter.

Any other game was always - win win win. Crusader Kings is really a masterpiece. I think it's probably the most innovative game since 1990s when RTS / FPS / MMORPG / MMOFPS etc. were suddenly invented seemingly overnight. Sure it's possible to make an indie title that focuses on one interesting mechanic, or produce a game with a decent story and touching dialogues or create a memorable character. But to take something as ancient as a grand strategy (+RTS) genre in all its complexity (economics, armies, diplomacies) and to make something that feels REALLY brand new and also is an absolute blast to play and has one of the strongest "one more year (turn)" hook? Wow.

I didn't experience a joy of revelation the first contact with CK-II gave me since maybe Dune-2 when I was blown away by the fact that each of those little soldiers and vehicles are living and breathing and are following my orders in real-time.

<comment><USER36> Ever try Stellaris?

It's been pretty cool watching the studio gradually add to the game, getting more of the CK/EU4 "losing is fun" (and overall complexity) into it.

Their development model is really something I can get behind.

<comment><USER38> Yeah I tried Stellaris, but it's more like a traditional 4X game so you're managing resources. There are some stories there but they don't just emerge every 5 minutes like in CK.

Was just thinking today that the connection with real world is what makes CK work probably. You already have some preconceptions of who the people on the map are or at least imagine very easily based on your ideas about their descendants from today. Also the geography makes sense.

Space is exciting but it's unknown and the races are made up and at least for me, it's hard to relate to them on the level that I would relate to some obscure Byzantium noble.

I wonder what would it take to make the emergent storytelling work in a completely made up world the way it works in CK world.

And yes their development process is amazing and an example really.

<comment><USER36> I don't know either, but I think they're figuring it out release by release. I played it when it first came out, and a bunch a few months ago, and there's way more, although yeah, not like CK... yet.

</comment></comment></comment></comment></comment></comment><comment><USER39> I love this series. I didn't like how many clicks it took each turn to play a Civ3 / Conquests game by email, so I wrote a helper that would automatically launch the game when you opened an email attachment, read pixels from the screen, identify known patterns of graphics, and send clicks to "autopilot" the game into loading up the save and entering your turn. When you finished your turn, it would zip the file back up and send it to the next player. It was a little buggy but proof of concept worked well. Didn't get much chance to use it myself, but later gifted the code to some programmers who ran a fan site and were interested in it.

</comment><comment><USER6> My biggest shock with Civ was funding out that I was a military dictator at heart.

I started with hope of a cultural victory. I gave away technology and trade at a disadvantage to keep aggressive allies on my side.

Then genghis khan attacks me unprovoked despite previously good relations.

He sacked a city and I decided he needed to be completely removed from the game for peace. So after stabilizing, I built up a huge military and defeated him.

But now I had a huge military draining my resources. And alexander was pretty aggressive. Before you knew it, my wife was begging me not to attack the last survivor, Gandhi. Which I defeated and achieved world domination.

I was literally horrified at myself.

<comment><USER40> Games inherent the biases of their creators, so it's more a reflection of them than you.

<comment><USER41> If anything, I think Civ tried to subvert the bias of war games by allowing other types of victories than just a military one.

</comment></comment></comment><comment><USER38> If you are remotely interested in strategy games check out Crusader Kings III It's phenomenal (I mean CK II was phenomenal and CKIII just updates it). Truly a unique experience.

I cannot stand any games that have NPC interactions with the only exception of CK. It's the closest you can get now to experiencing what it is to read and write a historical fiction at the same time (speaking from experience).

<comment><USER42> I've tried to get into CK three times and I just don't get it. I love all the other paradox games (well, except stellaris, scifi setting is not my cup of tea). I love EU4 because it's a strategy game, where I can replay history and explore alternative paths. But with CK2 and CK3 now it's just not clicking for me. Why should I care about my in-game brother's wife's fictional son?

</comment></comment><comment><USER43> I used to love, love, love Civ games. Civ 4 was definitely my favorite as well. However, just as a kid I finally graduated from boardgames like "Risk" to more sophisticated fare (SPI and AH games), with Civ I finally graduated to Paradox series (EUIV, CK3, HOI4), which each have more verisimilitude and thus feel more real and more satisfying.

Oppositely, Civ literally got more cartoony and, in a way, less believable with each new version.

So now I only play Civ when I want a "casual" game. I'm never really interested in playing it to completion. It feels "gamey" and mildly unsatisfying once you've mostly explored the world. I have no interest in playing at "hardest difficulties" that are really nothing more than giving more plusses to the AI and more maluses to you.

I want more depth of play. To feel like Civ _used_ to feel. Exploring a world. Making alliances that make sense.

I believe Paradox has spoiled me utterly in that way.

</comment><comment><USER44> I've never played it, but every other week, I get an email from Steam saying it's on sale.

Is it worth it? Which version should I get?

<comment><USER45> If you like turn-based games, play it. It's one of the best. Everyone says V is the high water mark. I didn't pick it up until VI, but really liked it.

<comment><USER22> I have all of them. I agree that V: Brave New World is the high water mark. I play IV: Beyond The Sword on lower spec laptops that can't handle the graphics in V.

</comment></comment></comment><comment><USER46> A fair bit of my education was Civ. There's never enough time in a history class to show you much of what's out there to learn, but Civ was a great way to learn about some cultures I'd never have heard of otherwise. The Civilopedia was pretty good reading for a time before Wikipedia, and it gave you the basic list of what Sid thought were the important cultures. Of course you can always add more, but Civ is a decent start if you want to know about someone other than Greece, the Romans, and Egypt. The list of wonders is also fantastic if you want something approaching a canon of stuff we've built.

I haven't dared to go back to the series in the later years, too much addiction potential.

</comment><comment><USER47> I played all Civilization games from I to 4, and even played a little bit of the 5.

Unfortunately, what was once a revolutionary concept, faded into something more ordinary very quickly, at least for me.

Every game is essentially an improvement and refinement over the previous one, with no "revolutionary" concepts being introduced. (an exception is Alpha Centauri, which you can consider a spin-off in space, and which introduced several interesting things).

It's a pity. I admire Sid Meyer and his work, and Firaxis. But it's a pity that they essentially milked a successful concept without inventing anything truly NEW for about twenty years.

</comment><comment><USER48> Serious question: I haven't played Civ (due to my then, younger age, although I have heard of it), I'd like to give it a go. Which one should I try out? Why?

P.S: I would really appreciate one which favors/fosters learning over "dumb" playing.

<comment><USER49> Civ 2 is the one I played the most. It's a classic, but probably a bit dated by now. Civ 5 is pretty good, and probably better than 6. Some people claim it peaked at Civ 4.

Civ 5 certainly changes a few things compared to earlier versions, but at its heart it's still the same basic idea.

I think I'd recommend Civ 5. The lack of doom stacks makes it more tactical, and it cuts down on micromanagement by introducing puppet governments for excess cities. Every civilization has its own special units and special abilities that give a subtle but noticeable twist to the flow of the game.

<comment><USER50> I would agree with this. Civ 4 is absolutely something some one new to the games should experience. Civ 5 and 6 allow you to control and focus on different things and are definitely, if not improvements, welcomed changes.

Humble Bundle has a lot of Civ sales so if you're patient I'm sure you can grab a lot of the Civ games all at once for a small price.

</comment></comment></comment><comment><USER51> Distantly related: Gandhi, asked by a reporter what he thought of civilization, is said to have replied: "I think it would be a good idea".

<comment><USER42> And then he launched the nukes.

</comment></comment><comment><USER52> I have fond memories of sitting in front of my Tandy Sensation, black screen with two or three revealed pieces of a continent. Such a great game.

</comment><comment><USER39> _...encounter neighbouring tribes with whom they'd negotiate, trade and sometimes go to war._

Or, sometimes _not_ go to war

</comment><comment><USER53> I haven't played any Civs yet, not sure to go with the original or one of the remastered versions.

</comment><comment><USER54> I don't see _Civilization_ as a political masterpiece.

It's certainly a great strategy game, but its underlying political message is a Machiavellian one. Unlike the real world where the governors and rulers are (at least on a superficial level) bounded by international duties, social & historical conditions, and the people under governance. In _Civilization_ , the player is free to adopt any economic policies or political systems, as long as they give the maximum material benefits in the current situation. This can lead to some absurd strategies that don't make much sense. For example, abolishing republicanism in favor of absolute monarchy in the 21st century for a few turns before jumping back, without any regards of real-world consequences whatsoever, since the player is the eternal dictator of life. It's a simplistic system designed for game balance, not a realistic analogy of the real world.

Thus, while I think it's certainly one of the greatest strategy games, but I don't think the game is a political masterpiece (Nevertheless, I guess the political system in _Civilization_ can be alternatively interpreted as a cautious tale similar to _Universal Paperclip_ 's warning - If you let an overlord to optimize the wrong goal function - to produce as many paperclips as possible, or to win the game at all costs, inevitably humanity will suffer).

This Civilization mentality can be best summarized by this HN comment under the submission "China's Censors Ban Winnie the Pooh and the Letter 'N' After Xi's Power Grab".

[https://news.ycombinator.com/item?id=16493254](https://news.ycombinator.com/item?id=16493254)

> _If you played Civ5: no ideology is inherently wrong. As long as the "public > opinion" is "content", people would be happy with it. Player would > intentionally choose Order or Autocracy to gain some "Tenets". E.g. Order > usually gets you better productivity and Autocracy usually gets you better > military power._

> _Right now people in China are mostly content with the current ideology._

> _This design actually matches reality very well: while US apparently chose > Freedom ideology, China chose Order ideology. China would finish impressive > large project faster and more efficient, with the cost of dictatorship._

> _(Civ5 got a lot of these right, including a technology called "the Great > Firewall" to counter the cultural influence from other civilizations > [http://civilization.wikia.com/wiki/Great_Firewall_(Civ5)](http://civilization.wikia.com/wiki/Great_Firewall_\(Civ5\)) > ) _

And another HN user provided a counterargument on how analogy breaks down in the real world,

> _It doesn 't match reality at all in fact. The exact opposite is true for > nearly all cases (China being the sole exception)._

> _The major liberal economies are radically more productive than countries > like China, much less the other 'order' type nations. The order economies, > save partially for China (which is still extremely poor in the bottom 2/3), > are on average impoverished, backwards, and with very low productivity. Even > China is still shockingly backwards at a lot of common economic tasks, such > as farming (they have ~1/40th the farming productivity of South Korea)._

> _The liberal economies have dozens of major success stories, from Germany to > Canada to the US to Sweden. The 'order' group has one, and only insofar as > China liberalized its economy and moved away from a rigid command & control > economy._

> _Autocratic doesn 't get you a superior military. It typically gets you an > economy that is bled and debased to feed the military, which ultimately is > self-destroying. See: Russia, whose people are very poor ($8k GDP per > capita; $4,000 median net worth). Meanwhile Putin diverts vast resources > they can't afford at all, into military spending._

> _Liberal economies produce superior militaries pound for pound, because they > can afford to sustain them over time._

</comment><comment><USER55> indisputably, it kept me off the streets for months...

</comment><comment><USER56> Orthogonal complaint, but it was a huge loss when the Civilization catalog was removed from GeForce Now.

I loved playing Civ while developing on my laptops, without it spooling up my fans, burning my lap or impeding my other processes. Playing it in the cloud was the perfect solution, and it has the perfect "lag doesn't matter" gameplay where a bit of latency doesn't diminish the enjoyment.

Whatever their pissing match is, after playing Civ in the cloud I just could never get back to playing it locally. I was spoiled, and as a result I haven't bought two of the most recent Civ expansion packs.

</comment><comment><USER57> Expected this to be about: [https://www.amazon.com/Civilisation-Kenneth- Clark/dp/0719568...](https://www.amazon.com/Civilisation-Kenneth- Clark/dp/0719568447)

Or perhaps: [https://www.amazon.com/Civilization-West-Rest-Niall- Ferguson...](https://www.amazon.com/Civilization-West-Rest-Niall- Ferguson/dp/1594203059)</comment>


Effectively Managing Kubernetes with Cost Monitoring - <AUTHOR> https://medium.com/kubecost/effectively-managing-kubernetes-with-cost-monitoring-96b54464e419 <comment><USER2> Helm chart author here-- let me know if you have any feedback! I wanted to build a one or two click way to quickly get cost metrics on GKE.</comment>