Reed-Solomon coder computing one million ECC blocks at 1 GB/s - <AUTHOR> https://github.com/Bulat-Ziganshin/FastECC <comment><USER2> We've been using klauspost's Golang reedsolomon package in our distributed storage package. It runs approximately as fast (~1GB) because the hot paths are written in asm: [https://github.com/klauspost/reedsolomon](https://github.com/klauspost/reedsolomon)

Erasure codes are pretty magical.

<comment><USER3> I'm not sure if they are quite in the same class. Or maybe I'm misunderstanding, but the Go implementation says "Note that the maximum number of data shards is _256_ " while FastECC says "Current implementation is limited to _2^20_ blocks, removing this limit is the main priority [...]". Or are shards and blocks different things here?

<comment><USER4> They are pretty different.

Blocks are like blocks in a filesystem or on a disk, while shards are like RAID stripes/mirrors. 2^20 blocks would make for a pretty small datastore, depending on what your needs are, and seems a more serious limitation than the 256 shards.

Not an exact description, but a hopefully workable analogy.

<comment><USER4> Actually, it's not clear to me if FastECC is saying that it works on 1M blocks together as a unit, in which case they would be the same as the shards. If that's the case, it does make this a totally different class of thing--what are the use cases?

<comment><USER5> I think it's mostly simplicity. Say your ECC code is only fast with say 17 shards/blocks of data and 3 shards/blocks of parity. I hear numbers like that used for hadoop, backblaze, microsoft and facebook object storage, etc.

So sure you can split large files into groups of 20 pieces (17 data + 3 parity). But the real world often has low error rates, but the errors that do happen can happen in bursts. Say adjacent nodes dying, power strips/circuits blowing, complete loss of network connectivity for 30 seconds, etc. BTW, yes I'm aware you can tell hadoop to keep 2 copies in rack and 1 copy outside the rack, that's basically crude interleaving.

If your code can handle a larger number of blocks/shards you can average your parity over a larger number shards/blocks so you can plan for the average error rate, but still handle substantial bursts of error.

So maybe instead of 17+3 (17% overhead, survives 3 lost) you switch to 2048+192 (9.4% parity). That way you can survive a 9.4% error rate, even if that's 4 errors in a row. Granted updates become much more expensive, but for some cases it would be well justified by being more durable.

<comment> Bulat-Ziganshin if they will need that, they will find a method long ago. but they try to minimize amount of data read/written for every transaction. look up for example "pyramid codes" \- it's a way to use 20 disks in raid system but read/write only 5-6 for any operation. and MS use that in azure afaik

with 2000 data blocks you will need to read back all those datya blocks to generate new parity when any of these data blocks was changed. and this decreases overall perfromance 2000 times. so you should see why they need those pyrammid codes rather than something on opposite side

</comment></comment></comment></comment></comment></comment><comment><USER6> Firstly this looks cool and I'll be looking at it closer when I get home from work.

> Note that all speeds mentioned here are measured on i7-4770, employing all > features available in a particular program - including multi-threading, SIMD > and x64 support.

I hope this doesn't wind up infringing on the Streamscale patent[1] as some other works have in this field. Again I need to give this a proper read.

[1] [https://www.google.com/patents/US8683296](https://www.google.com/patents/US8683296)

<comment> Bulat-Ziganshin the math behind it is completely different. it doesn't even use GF(2^n) fields at all :)

as mentioned in RS.md, the encoding sheme is known since 2003 and even became a part of RFC

</comment></comment><comment><USER7> I've implemented a Reed-Solomon encoder for telemetry blocks over a RF channel. There, I was using a (255, 223) code on GF(2^8). There were interleaving parameters for a telemetry "packet" but each encoding took constant O(1) time. So the overall time to encode a downlink was just O(N). What exactly is meant by "Reed-Solomon ECC"? I'm guessing the code is doing something different related to data storage than what a traditional communications RS code does?

<comment> Bulat-Ziganshin Let's see: in order to produce 32 parity blocks from 255 data blocks you are probably perform 32x255 multiplications, i.e. NxM operations where N,M is number of data/parity blocks. for a fixed N/M rate it is considered as O(N^2) algo

Once you fixed N and M, encoding speed will be fixed in both your and my algo. In mine, it's 1 GB/s for N=M=524288

And yes, it's doing the same as your algo - generate parity blocks from data blocks and then restore from any combination of N survived blocks

</comment></comment><comment><USER5> Anyone compared this to the intel ISA-L library that uses the various intel specific instructions to accelerate reed solomon encoding?

I believe this is what Facebook, Microsoft, and similar organizations are going to avoid Hadoops 3x replication overhead, while still keeping the same degree of protection.

[https://github.com/01org/isa-l](https://github.com/01org/isa-l)

<comment> Bulat-Ziganshin i (fastecc author) don't have isa-l benchmarks at hand, but i compared fastecc to the best O(N^2) implementation i know - MultiPar. My conclusion is that MultiPar will be slower than FastECC starting from ~32 ECC blocks

</comment></comment><comment><USER8> Are there any good explanations of Reed-Solomon? The mathematics look a bit hairy..

<comment><USER9> The Wikipedia article has a section "Reed & Solomon's original view: The codeword as a sequence of values" which I think is fairly easy to follow.

The fundamental idea is a polynomial of degree n is uniquely described by n+1 points (2 points give a unique line, 3 points a unique parabola, etc). If the polynomial is the data you want to protect, you can pick enough points to describe it redundantly. Then, if a point is lost, as long as there are enough to still uniquely determine the original polynomial, you can recover the original data. And if the points do not all come from the same polynomial (as when the data has been corrupted) you can at least detect this, and you may be able to throw out some of the points to recover.

(Edited to correct that the polynomial is the original message, not some set of points)

<comment><USER8> Just to interrogate this description:

So, there is a trick to picking the points such that _any_ can be lost, and only the remaining number matters? I think this was the case with par2, that used RS - you could lose _any_ of the files, and as long as you had enough left, you could infer the lost files. I guess this method is the bit I get stuck on.

How are 'corrupt' points detected? By determining that no polynomial is described by a set of points, and then computing the least number of points needed to remove for a polynomial-describing set of points?

<comment><USER10> From the Go implementation linked upthread:

> The encoder _does not know which parts are invalid_ , so if data corruption > is a likely scenario, you need to implement a hash check for each shard.

The coder just does some simple matrix math to reconstruct what you tell it to reconstruct. You have to build the checking and detection yourself.

<comment><USER11> This is true only for erasure RS-codes, but not for general RS-codes. In erasure RS-codes you must specify which points are corrupted and the decoder discards them.

For general RS-codes you don't need to detect which points are corrupted. An intuitive explanation of the decoding process here is that, if a small number of evaluation points are corrupted, then the original degree n polynomial is still the closest polynomial to the (slightly corrupted) set of evaluation points. The decoding algorithm uses this fact.

This however comes at cost. General RS-codes can correct only half as many errors as Erasure RS-codes.

</comment></comment></comment></comment></comment><comment><USER12> For a pretty quick implementation w/ good C/C++ APIs, as well as BCH decoding, check out [https://github.com/pjkundert/ezpwd-reed- solomon](https://github.com/pjkundert/ezpwd-reed-solomon)

Also quickly available as a JavaScript and Python binding...

</comment><comment><USER13> I'm always confused about all those codes (RS, LDPC, Turbo etc.).

If you have the parchive use case, i.e. you want to "armor" files on disk so that you can detect and correct bit flips (including bursts), which codes are useful and which aren't?

RS obviously is (parchive, optical disks etc.). But are fountain codes usable? Low density parity codes? I have no idea how I would select a code family.

<comment><AUTHOR> Also depends on failure mode of your media. E.g. if you can lose data by 4k sectors, then it makes sense to use RS with 4k symbols instead of 8 bit (if there is such a thing...), because you do not need partial sector recovery. If you can flip separate bits, then BCH is kind of optimal. If you plan to stream, maybe some sort of FEC code, et cettera. For example, in ye olde NAND that had 512 byte pages with 16 byte OOB area per page it made sense to use BCH, because bit errors were kind of independent from each other. Bit errors in TLC NAND are not independant anymore.

<comment> Bulat-Ziganshin when encoding larger blocks, they are just split into multiple small words. f.e when GF(256) is used, each word is just a single byte. then you have f.e. 20 data blocks and encode corresponding words of each blocks as a single group, and each group generates a single word for each of parity blocks. you may consider it just as interleaving

overall, encoding in GF(2^n) is faster when n is smaller (since you need smaller multiplication tables that better fits into cpu cache). But OTOH encoding with K data+parity blocks require that 2^n>K, so for best speed n is choosen as small as possible among 8/16/32 depending on the K value

<comment><AUTHOR> what I meant is that smallest unit that RS can correct is one word, which usually is byte. So 8 bit errors in one word can be restored with less EC than 8 bit errors in different words.

In case of BCH, location of bit errors does not influence error correction strength, so it is more suited to correcting independant bit errors, while RS is more suited for bursty/whole block errors.</comment></comment></comment></comment>


Sorry, Linux. Kubernetes is now the OS that matters - <AUTHOR> https://www.infoworld.com/article/3322120/kubernetes/sorry-linux-kubernetes-is-now-the-os-that-matters.html <comment><USER2> Eh, more Kubernetes hype, because there isn't enough of it already. I'm not doing that.

To state that the OS, the very piece which is responsible for providing data integrity and which makes the hardware actually do useful things doesn't matter is ignorant at best. On top of that, hardware constantly changes and without OS drivers to support those new capabilities any infrastructure software which relies on the OS will be useless. The article is just naive while trying to sound sagely and go with the latest fad at the same time.</comment>


MySQL.com currently Hacked (and serving javascript malware) - <AUTHOR> http://blog.sucuri.net/2011/09/mysql-com-hacked-javascript-malware.html

<comment><USER2> That's a relief, for a minute there it looked like MySQL had been bought by Oracle.

</comment><comment><USER3> I needed to access the mysql forums today and Google kept blocking me, claiming malware. I had almost overrode it thinking that google must be wrong and am glad I didn't.

Looks like they are still infected --- anyone know of a way to tell if a site is infected (kind of like a "is it down or just me" ) outside of Google search?

<comment><USER4> There is a site scanner here: <http://sitecheck.sucuri.net> (free)

<comment><USER5> Scanning "<http://www.mysql.com> returns "Verified Clean"...

<comment><AUTHOR> They fixed it..

</comment></comment></comment></comment><comment><USER6> I visited the site during the affected time on Mac OS X 10.7, with Safari - I'm worried I might be infected. How can I check?

</comment><comment><USER7> Are Linux users susceptible to these kind of attacks too? In the video the exploit is presented on a Windows machine.

</comment><comment><USER8> [http://blog.armorize.com/2011/09/mysqlcom-hacked- infecting-v...](http://blog.armorize.com/2011/09/mysqlcom-hacked-infecting- visitors-with.html)

</comment><comment><USER9> Does anyone understand what that javascript code is doing?

<comment><USER4> It seems to hide an iframe call to <http://falosfax.in/info/in.cgi>?

</comment></comment><comment><USER10> There has been quite a flurry of open source projects getting hacked as of late (kernel.org comes to mind, but I think there were 1 or 2 others as well). Does anyone know if these different hacks are related to each other in any way?

<comment><USER11> If you're countryX and want to bring down everything, hacking sites like mysql, apache, kernel and the likes would do the most damage

<comment><USER10> No doubt, but that doesn't explain why all these sites have suddenly become vulnerable. Unless someone with unusual hacking capabilities only started trying recently.

<comment><USER11> _Unless someone with unusual hacking capabilities only started trying recently._

'Usual' hackers are probably a step above script kiddies. On the top end you have state sponsored PHDs

<comment><USER10> I don't see your point. There are no countries that would have only recently developed an interest in hacking such sites and have the capability to do so. Clearly you're trying to imply that some country is behind this, so feel free to just say it out loud instead of being cute about it and wasting everyone's time.

<comment><USER11> _Clearly you're trying to imply that some country is behind this, so feel free to just say it out loud instead of being cute about it and wasting everyone's time._

It's an internet forum, not a court of law. OK? I am speculating. When someone does something this big, I tend to think of someone way out there, like those that tried to hack Google, defense companies etc. For all we know they did to get the info from one company, steal CC from a million of them, or just have the option to take million of sites offline. Relax.

</comment></comment></comment></comment></comment></comment><comment><USER12> Apparently, this is the infected resourse[1], although it's not infected when (or rather where) I load it.

[1] [https://www.mysql.com/common/js/s_code_remote.js?ver=2009101...](https://www.mysql.com/common/js/s_code_remote.js?ver=20091011)

<comment><AUTHOR> They fixed it.

</comment></comment><comment><USER13> This may be fallout from Google flagging a larger network.</comment>


Hack the Kernel – Learn about operating systems online - <AUTHOR> https://www.ops-class.org/ <comment><USER2> Thanks for sharing. I'm certainly bookmarking this page and revisit this course after wrapping up CMU's 213[0]. How does this compare to Udacity's "Introduction to Operating Systems?".

[0] If you are self studying, like me, CMU offers not only the lectures online, but the labs as well: [https://scs.hosted.panopto.com/Panopto/Pages/Sessions/List.a...](https://scs.hosted.panopto.com/Panopto/Pages/Sessions/List.aspx#folderID=%22b96d90ae-9871-4fae-91e2-b1627b43e25e%22)

<comment><AUTHOR> The CMU class looks interesting but it seems the assignments are behind a login. A list of classes that have more open content - [https://github.com/prakhar1989/awesome- courses#systems](https://github.com/prakhar1989/awesome-courses#systems)

<comment><USER3> I took 213 at CMU. Can't recommend it highly enough. A lot of other intro systems courses are based off that. It is a prerequisite for most classes moving forward at CMU. The textbook is also available online as a pdf (Google it). First 2 or 3 labs deal with bitwise, assembly (buf overflow attacks - bomb lab), then cache lab (matrix multiply performance), then signals, then implementing malloc, and finally using pthread API / threads to create a proxy server.

</comment></comment></comment><comment><USER4> I wasn't expecting much at first as an OS professional, but wow this is great! Flipping through the slides, it's just the right amount of info and context to develop a working knowledge and vocabulary without much time investment or getting overwhelmed or losing interest. Didn't look at the videos or assignments yet.

If you work in some type of ops role this will really accelerate your career.

If you are a programmer and forgot or did not take an OS internals class, ditto.

You will not unlock maximum throughput, minimum latency or a balance without understanding these concepts.

</comment><comment><USER5> Thanks for posting this. I was looking for more operating system courses. I'm currently watching Kirk McKusick's FreeBSD Kernel Internals course [1], which isn't available for free (the first hour is [2]), but I thought was worth the money. I find is really amazing that I can watch a course taught by someone who is such an expert in UNIX-like systems.

Along with a general in-depth OS course, I would like to find a Linux-specific course. Does anyone know of a good Linux internals course?

[1] [https://www.mckusick.com/courses/introdescrip.html](https://www.mckusick.com/courses/introdescrip.html)

[2] [https://www.youtube.com/watch?v=nwbqBdghh6E](https://www.youtube.com/watch?v=nwbqBdghh6E)

<comment><USER6> The Linux Foundation has a bunch:

[https://training.linuxfoundation.org/linux- courses](https://training.linuxfoundation.org/linux-courses)

<comment><USER6> I find it hard to believe someone would downvote a recommendation for suggesting the Linux Foundation in response to a question asking if there were any good courses on Linux Kernel internals. The quality is excellent the price is inline with just about any 4 or 5 day vendor training class. I know of no other such class outside of a university setting.

If you had didn't have a positive experience then please share it.

<comment><USER7> Agreed. But its a bit expensive too.

</comment></comment></comment></comment><comment><USER8> UNIX-like kernels are easy, in that you don't have to have that much running before you can run "Hello World". I'd like to see more on microkernels. You have to have more pieces running before you get to "Hello World".

Also, the emphasis on virtual memory and page faults is becoming dated. Paging out to disk is obsolete technology. RAM is too cheap, and mobile devices don't page.

<comment><USER9> > Also, the emphasis on virtual memory and page faults is becoming dated. > Paging out to disk is obsolete technology. RAM is too cheap, and mobile > devices don't page.

I've got to admit, I thought of John Carmack advocating for pretty much the opposite direction for operating systems earlier this year, for making greater use of memory mapped files, unified virtual memory for CPU and GPU, and so on: [https://twitter.com/ID_AA_Carmack/status/742191010013286400](https://twitter.com/ID_AA_Carmack/status/742191010013286400)

I wonder what you meant by "mobile devices don't page."

<comment><USER10> > I wonder what you meant by "mobile devices don't page."

Mobile devices have memory-mapped pages, but they don't have VM or overcommit. Your process just gets killed if it's using too much memory.

Page faults are still important though… actually even more important.

<comment><USER9> Are we talking about the same thing when we say "mobile devices?" Like, Android phones? Because if there's something lobotomized about their virtual memory, that's something I'm curious about, if you could share a reference of some sort.

<comment><USER10> I don't know if Android swaps (almost certainly not) but iOS does not swap. It doesn't have a pager. Of course it does have "VM".

<comment><USER9> I dug into it a little. It's mostly for posterity at this point but if anyone wants to read about it, look up the Android lowmemory killer, which is sort of an enhancement to the OOM killer's functionality. It's a conventional enough Linux virtual memory otherwise.

</comment></comment></comment></comment></comment></comment><comment><USER11> I have to say - the course is very well organised. For me atleast, the structure and flow is exactly how I approach my learning. A video overview -> a though provoking discussion -> the problems -> hints -> academic paper -> solution. Neat.

</comment><comment><USER12> The professor who made this class is leaving UB next fall. I'd be lucky to be able to attend this one last course under him(the class is gonna be a full house this time) before he moves out of UB, a sad event in itself :(

<comment><USER13> While the course / content is itself good. The attitude of the professor is very questionable.

[https://blue.cse.buffalo.edu/posts/2016-10-22-the-best- way-t...](https://blue.cse.buffalo.edu/posts/2016-10-22-the-best-way-to-not- get-tenure/) is a rant from him.

Quiet a few PhD students have quit from him and does not have a good reputation for being nice.

<comment><USER14> Please don't slander people without references from throwaway accounts.

<comment><USER14> Some long term HN habitués obviously (given the downvotes, though strong oscillations at the moment) think slandering people anonymously is okay. I'm curious why this would be. Is is because they think people would be penalised unfairly (e.g. by their institution) if they "told the truth" about someone? Wouldn't critism be more effective if you backed it with your identity?

Obviously when universities conduct class assessments they are able to do a census of actual participants. Here anonymity is sensible.

Your slander would be more acceptable if you had used content from a first hand experience, as it common on e.g. ratemyprofessor. Reading the (anonymous) statements about him online it does seem like he is a polarising figure, especially that the course works is a lot harder (in the sense of pushing peoples' capabilities) but many people rate him as one of their best lecturers... [http://www.ratemyprofessors.com/ShowRatings.jsp?tid=1626392](http://www.ratemyprofessors.com/ShowRatings.jsp?tid=1626392) [https://www.quora.com/How-good-is-the-MS-in-Computer- Science...](https://www.quora.com/How-good-is-the-MS-in-Computer-Science-and- Engineering-program-of-the-University-at-Buffalo-considering-the-quality-of- education-job-internship-scene-and-part-time-jobs)

Overall I come away with the impression that a whole bunch of students were totally unprepared for his class ("Need to know C", since when isn't C a prerequisite for operating systems???). The projects sound too big for the time available, something I remember well from undergraduate study.

</comment></comment></comment></comment><comment><USER15> Go bulls! I took Operating Systems with Kosar and worked on Pintos rather than the OS-161 modules. Honestly don't know what I was thinking, Challen's class seems far more interesting...

</comment><comment><USER16> [http://wiki.osdev.org/Main_Page](http://wiki.osdev.org/Main_Page) has a LOT of great info on OS theory and practice as well.

Edit: added "as well." I don't want to give the impression that the OP is an inferior source.

</comment><comment><USER17> I have taken this course and the assignments are fun and challenging. Learnt a lot.

</comment><comment><USER6> Wow, this really great. Thank you for sharing.

I didn't any "about" link. Does anybody know who did this or what the affiliation is? In this Youtube link I see "Buffalo":

[https://www.ops- class.org/courses/buffalo/CSE421_Spring2015/...](https://www.ops- class.org/courses/buffalo/CSE421_Spring2015/#_lectures)

Is this SUNY/Buffalo State maybe?

The lecturer in lecture 1/38 is fantastic. Does anybody know who this person is?

<comment><USER18> University at Buffalo, SUNY. The person that teaches the course (who is the lectuerer) is Geoffrey Challen ([https://blue.cse.buffalo.edu/people/gwa/](https://blue.cse.buffalo.edu/people/gwa/))

Source: I took this class last semester (Spring 2016)

<comment><USER6> Thanks. Do you know if he made all this available then or is this something he did in conjunction with SUNY? The reason I ask it because of the domain and it simplicity of navigation.

</comment></comment></comment><comment><USER19> This is godsend! Today I found some final notes and resources over the internet, wanting to put my C/C++ skill to good use and build and learn something. Always was attracted to OS (having OS class in a year but I couldn't wait), so thanks for sharing this so much! Can't wait to get started tonight!

</comment><comment><USER20> its the best class i've ever taken. definitely worth solving the assignments!

</comment><comment><USER21> Wow! Thank you for sharing. Learnt a lot.

This is really worth keeping bookmarked. Highly recommended.

</comment><comment><USER22> That actually looks quite good! Can anyone who took this training vouch for it?

<comment><USER20> Yes. Mark Zuckerberg vouched for it. [https://postimg.org/image/4b23cfczh/](https://postimg.org/image/4b23cfczh/)

</comment></comment><comment><USER23> ᕙ(`▿´)ᕗ thanks alot for sharing

</comment><comment><USER9> "Ops?"

No, really, I'm asking.

<comment><USER24> In this context it probably means Operating Systems (i.e. low level programming)?

(But i've been seeing the same term used for like System Administration / "Support Services" / the I.T. Department in general, or something.)

</comment></comment><comment><USER25> Wow this looks pretty cool!

</comment><comment><USER26> Do they have anything like this for learning how to transpile from lisp to other languages? =)

<comment><USER27> Not a course, but here's a nice blog post [0] on writing a lisp->JS transpiler (350 LOC) that was recently shared [1] on /r/haskell.

[0]: [http://gilmi.xyz/post/2016/10/14/lisp-to- js](http://gilmi.xyz/post/2016/10/14/lisp-to-js)

[1]: [https://www.reddit.com/r/haskell/comments/57sg9q/building_a_...](https://www.reddit.com/r/haskell/comments/57sg9q/building_a_lispjs_transpiler_from_scratch_in_350/)

</comment></comment><comment><USER28> Very nice. Look forward to using this.

</comment><comment><USER29> Mark this, will check it later. Thx</comment>


Found after 500 years, the wreck of Columbus's flagship the Santa Maria - <AUTHOR> http://www.independent.co.uk/news/science/archaeology/exclusive-found-after-500-years-the-wreck-of-christopher-columbuss-flagship-the-santa-maria-9359330.html <comment><USER2> Those old ships were possibly the most efficient vehicles ever produced. They got several thousand miles per galleon.

<comment><USER3> The Clipper ships, the most advanced sailing vessels operated commercially, could rival the speed of coal-powered steamships of their time, and even of modern oil-powered cargo ships when "slow-steaming" rules are applied. Many cargo ships capable of 23 knots have been restricted to 13 out of concern over fuel consumption.

Sail offers a number of advantages over powered ships, including the freedom from requiring fuel bunkers and costs. In a post-carbon world, among the options for shipping is a return to the use of wind power for at least a significant portion of shipping (and the elimination of 1/3 of hulls and cargoes presently comprised of petroleum shipments).

John Michael Greer looked at this in a recent post on Captain Gustaf Erikson, who maintained a fleet of commercially-operating windjammers through the mid 20th century, particularly with steel hulls and wire rigging.

It's also why you'll find navies at the forefront of research on energy research and propulsion. There have been three major revolutions in marine propulsion over the past two centuries: the emergence of coal in the 1850s (much later than its use in shorter-haul shipping and railroads due to the need to establish coaling stations -- an accomplishment demonstrated by the voyage Great White Fleet in 1907-1909), oil starting just prior to WWI, when Admiral of the British Navy Winston Churchill converted its fleet, and nuclear energy following WWII under US Navy Rear Admiral Hyman Rickover, though the latter propulsion was adopted only for aircraft carriers, submarines, and icebreakers, with the exception of a very few other experimental nuclear powered vessels.

Navies are at the forefront of current research into next-generation fuel sources given the dual challenges of peak oil and global warming.

<comment><USER4> The US Navy did run a number of nuclear powered cruisers up through the California class. Originally the idea was to keep up with the carriers whose range was limited by their fossil fueled escorts. Still the nuclear powered surface ships other than carriers fell out of favor as more efficient fossil fueled ships came about which also had much lower man power requirements.

Considering the large surface area of many cargo and passenger ships it would seem to indicate the possibility of some usage of solar power. The big issue being efficient enough panel construction in the face of the harsh conditions they would face.

<comment><USER5> How much fossils fuels will be consumed building (and then operating) the thousands of clipper ships need to replace one massive cargo ship?

<comment><USER3> First off: fossil fuels are going away. They're going to be too costly to extract, to rare to utilize, and/or too harmful to the environment. Take your pick. It's not as if there's a choice.

Secondly: the question isn't "how much fossil fuels", but "how much energy" EROEI (energy returned on energy invested) is what makes the economy tick, and it's almost certainly the most significant factor in the economic growth and expansion of the past 250 years or so.

Absent the energy surpluses provided by fossil fuels, yeah, we'll likely be doing less.

As for what it takes to make ships -- electrical energy (from renewable sources) can substitute for much fossil fuel use. Coking for steel is an exception, though that can come from where it did initially: charcoal. Or synthesized coke. Mind that exhaustion of forests for both lumber and fuel was among the key reasons England turned to, first seacoal, shortly after mined coal, as its energy needs grew.

And there's no guarantee that the Universe is going to provide humans with the energy we've become accustomed to.

</comment></comment></comment></comment></comment><comment><USER6> The photo looks more like a pile of rubble than anything resembling a ship. Yeah, I probably shouldn't have expected it to look like the Swedish _Vasa_ , but I was still disappointed. I guess organic materials don't last as long in the warm waters of the Caribbean as they do in the cold Baltic Sea.

Just out of curiosity, what would the conditions have to be in order for a wooden vessel to remain recognizable after being in warm water for 500 or 1000 years? Would anoxic water help?

<comment><USER7> The _Vasa_ was in cold, brackish water. Low salinity is good for preservation.

Sinking somewhere difficult to reach is important, to prevent salvage.

The _Vasa_ had her cannon brought up to the surface but was otherwise left alone. I went to the museum on a whim last year and was pleasantly surprised. It's not just the hull of the ship, everything onboard was preserved.

Really cool engineering project lesson, too. The _Vasa_ had a critical engineering flaw (way too top heavy) that came about due to pressure from the king. As a result, she sank as soon as she was launched on her maiden voyage!

<comment><USER8> Further, the brackish water was inhospitable for the organisms that usually break down wood in the ocean, ship worms for example.

</comment></comment></comment><comment><USER9> I wonder if Spain will claim ownership of the ship or its contents like they (rightfully) did with the treasures of _Nuestra Señora de las Mercedes_.

[http://www.businessweek.com/articles/2012-06-07/odyssey- and-...](http://www.businessweek.com/articles/2012-06-07/odyssey-and-the-lost- spanish-treasure)

The difference here is that the Santa Maria is not a warship, so I'm not sure the same rule applies.

<comment><USER10> It does not matter that it is not a warship. Sovereign wrecks are owned by the sovereign entity, whether or not they are armed.

The problem is that the _Santa Maria_ was not owned by Spain. It was owned by Juan de la Cosa, a private citizen.

</comment></comment><comment><USER11> I wonder if any of the previous salvagers of things like the cannons will be able to recognize the newly discovered significance of what they took and capitalize on it.. I imagine the original salvagers probably turned the items around quickly, but anyone who is hanging on to a cannon that came out of the water anywhere around there has got to be curious if it might be that one.

</comment><comment><USER12> maybe they can search for MH370 now

</comment><comment><USER13> Wow, CNN's search for Flight 370 must have really broadened.

</comment><comment><USER14> "I believe that, treated in this way, the wreck has the potential to play a major role in helping to further develop Haiti's tourism industry in the future," he said.

 __ __ __ __ __ __ __ __ __ __*

Columbus was a genocidal maniac mis-credited generally for discovering the 'new world' that had been inhabited for thousands of years prior to his arrival:

[http://boingboing.net/2013/10/10/christopher-colombus- raping...](http://boingboing.net/2013/10/10/christopher-colombus-raping.html)

I'm not sure I understand why someone would seek to make _his_ historical impact a tourism draw.

<comment><USER15> You're going to be so mad when you find out what they did to Auschwitz.

<comment><USER16> The last part of the parent comment was rantsy, but in my opinion did not deserve to be down-voted past oblivion.

Back to your comment, yes Auschwitz outrages us, deservingly so, but this state of affairs has a lot to do with the fact that the perpetrators of Auschwitz lost. We hear a lot less outrage when the perpetrators 'won'.</comment></comment></comment>


In 1000 BC the summer solstice was on July 2nd [pdf] - <AUTHOR> http://www.beda.cz/~jirkaj/seasons/seasons.pdf

<comment><USER2> It's not just calendars. It's clocks too. GMT is less than 200 YEARS old. Yet even more than that, GMT reflects recent changes to our very concept of time.

GMT was based on noon at the Royal Observatory. But only nominally because GMT was a standard for mechanized time and hence abstracted away the messy variability in Solar noon. The fact that you probably are not going to flame me for describing solar noon as 'messily' variable indicates how deeply anachronistic the table is with respect to the meaning of time.

To carry this further, the calendar is a mechanical abstraction over the messy details of years. The year for Stonehenge users is based on observable natural phenomena just as noon is when the sun is due south. And if your first thought wasn't to flame me for leaving half the world out of the description of noon that's your conceptual blindspot not mine.

</comment><comment><USER3> The sun didn't change. The way people date the sun did. A Julian calendar prior to October 1582 and from there on a Gregorian calendar

[http://en.wikipedia.org/wiki/Gregorian_calendar](http://en.wikipedia.org/wiki/Gregorian_calendar)

<comment><USER4> And there was no July in 1000 BC as the month is named after some Julius Ceasar who lived quite a bit later. The whole argument is a silly, ahistoric play on calendar definitions.

</comment></comment><comment><USER5> This posting made me look back to another posting on HN some time ago about 'Falsehoods Programmers believe about Time'.

My HN search fu is not great, it took me a while to find the posting so I post it here for the convenience of others: [https://news.ycombinator.com/item?id=4128208](https://news.ycombinator.com/item?id=4128208)

</comment><comment><USER6> 1581 AD 10 Mar 18:01 11 Jun 19:34 13 Sep 06:54 11 Dec 20:06 00:02

1582 AD 10 Mar 23:56 12 Jun 01:30 13 Sep 12:39 22 Dec 01:54 00:02

1583 AD 21 Mar 05:51 22 Jun 07:16 23 Sep 18:24 22 Dec 07:42 00:02

Looks the single most dramatic shift happened in these two years. Would someone with astronomical chops care to explain a bit?

<comment><USER7> [http://en.wikipedia.org/wiki/Gregorian_calendar](http://en.wikipedia.org/wiki/Gregorian_calendar)

"Four Catholic countries—Spain,[18] Portugal, the Polish–Lithuanian Commonwealth, and most of Italy—implemented the new calendar on the date specified by the bull, with Julian Thursday, 4 October 1582, being followed by Gregorian Friday, 15 October 1582."

</comment></comment><comment><USER8> what is the significance of this?

<comment><USER9> I think it demonstrates precession, and the difference between the tropical and sidereal years.

Of course, the times were actually _calculated_ from the known rate of precession; we couldn't exactly have said that the summer solstice occurred at 22:00 hours on 2nd July, 1000 BCE. There, you know, _wasn 't even a July then_, given that it was named after a dude who wouldn't be born for another 900 years.

EDIT: As mentioned by other comments, it also captures the shift between the Julian and Gregorian calendars.

<comment><USER10> Another way to see the effect of the precession of the Earth's axis is in astrology. What's your sign? It's the constellation in which the sun stands on the day of your birthday. It's easy to see that: go up into the stratosphere in a balloon, and you'll see both the stars and the sun. Identify the constellation in which the sun stands, and there's your sign. So, my birthday is September 7, and my sign is Virgo. But every time I go up to the stratosphere on my birthday, what do I see? The sun is smack dab in the middle of Leo. Now I don't know anything about astrology, and trust me I don't want to, but a possible explanation would be this: the zodiac moves relative to the sun by about one constellation every 2150 years (25800 years for a full rotation), due to the precession of Earth's axis. So my best guess is that they made up the astrological signs about 2000 years ago and forgot all about precession.

<comment> T-hawk That's correct. The zodiac has precessed relative to the seasons. This is the definition of the "Age of Aquarius": that the sun is currently in Aquarius at the time of each vernal equinox, even though by historical definition the vernal equinox should occur at the border from Pisces to Aries. The sun has shifted by 1.5 constellations since the ancient originations of astrology.</comment></comment></comment></comment>


Stick a fork in it: Windows is done  - <AUTHOR> http://www.zdnet.com/windows-its-over-7000013964/ <comment><USER2> In a way journalists writing this type of article over and over puts a little fear in my heart. I don't ever intend or want to pass up my PC or laptop in favor of a phone or tablet interface; as a content developer its just not something I could ever see myself wanting to change. Sure, I own a smartphone and tablet but they're recreational at best and often used only for efficiency in my life, never a replacement for my PC where work gets done.

But what I mean when I say I'm afraid is that people _listen_ to these articles. They _believe_ what is said and trumpet it across the skies for everyone to hear. I'd gamble more than 90% of the consumer market are content consumers exclusively; they don't see the need or benefits to having a powerful machine that lives upon your desk. Its not mobile, its not sleek. What happens next? Manufacturers follow that market and begin to neglect the ways of old.

I never would believe the PC ever disappears but what I can see happening is it becoming a more niche market. Prices will go up and selection will go down as a result. It wont be soon but it will eventually happen. Perhaps I'm just afraid of change like my father before me. Perhaps I'm a bit too stubborn for my own good but whatever the reason I fear the day when finding a PC and OS modern enough to fit my needs isn't as easy as it is now. Until then I'm just going to keep on hoping the strong PC gaming market keeps the platform afloat.

<comment><USER3> I think this overlooks one fairly major fact and the reason Microsoft became one of the most valuable companies in the world: businesses have employees. Employees use productivity software. Productivity software cannot run on a tablet in any practical sense. Even if it could, most large companies (which are Dell and Microsoft's bread and butter) lag a good 10 years behind technology trends. This is why most employees are running Windows XP or 7 and the same stodgy Office productivity software they've been using for 20 years. It works and is universally accepted.

If there is ever a drop in demand large enough that would render the desktop computer market small enough to halt production, I would bet that you will find that you no longer use it for productivity either. I'm a developer too and that is not a niche market. It's easy to think of it as such but the reality is that old-fashioned productivity isn't going anywhere. Tablets have replaced non-consumption and at best complement desktop machines.

<comment><USER4> _"Businesses have employees. Employees use productivity software. Productivity software cannot run on a tablet in any practical sense."_

Employees stuck in offices use productivity software. There are so many settings in which notebooks and desktops aren't practical, but tablets are. Places where specialized software is required. Tablets deployed in retail, healthcare, defense, airplanes, hospitality, parcel delivery, onsite sales and repair, city councils, classrooms, elderly homes, etc etc.

Also, even productivity software works better on tablets in some cases. Nowadays, I use OmniPlan for iPad instead of Microsoft Project and Apple Numbers for iPad instead of the OS X version. I make website mockups on the iPad instead of on the desktop. For what I need to do, it's faster and more convenient.

<comment><USER3> " _There are so many settings in which notebooks and desktops aren't practical, but tablets are. Places where specialized software is required. Tablets deployed in retail, healthcare, defense, airplanes, hospitality, parcel delivery, onsite sales and repair, city councils, classrooms, elderly homes, etc etc._ "

This is partially what I meant by "non-consumption." In few if any of those environments are tablets _replacing_ desktops. They're making those jobs easier to do by integrating software where previously it wasn't possible. Perhaps it's replacing a clipboard and pen, but not really a desktop.

" _Also, even productivity software works better on tablets in some cases. Nowadays, I use OmniPlan for iPad instead of Microsoft Project and Apple Numbers for iPad instead of the OS X version. I make website mockups on the iPad instead of on the desktop. For what I need to do, it's faster and more convenient._ "

This may be true, but I would argue that this is what would be defined as a niche market. People in corporate America using Word and Excel is not.

However I do recognize that this might not always be the case. The tablet may come to surpass the desktop in enabling productivity which is why I said that if manufacturers ever halted desktop production, he/she would likely not be using desktops for productivity anymore, either. Chances are what he/she does isn't all that unique compared to the overall market.

</comment></comment></comment></comment><comment><USER5> This guy has seemingly made a career out of being wrong about Windows.

Here's a quote from one of his other articles, "I can't say that I've looked at Windows 7 nearly as closely as Kennedy has, but I've looked at Windows 7 enough to know that it's no real improvement on Vista."

It's too bad that "journalists" can be consistently wrong with impunity.

That said, based on his track record, Windows will probably have a bright future.

<comment><USER6> refresh our memories: how is Windows 7 a real improvement on Vista?

<comment><USER7> Off the top of my head: it boots faster, it operates faster, it's more stable, the interface is less bad (I hesitate to write "better"), and it dials down the panicky Cancel or Allow dialogs.

<comment><USER8> If I recall correctly, it system requirements are actually lower than Windows 7's as well. Way to go against the grain.

But that said, Windows 8's improvements are pretty much all under the hood: they're not user-facing. It's no wonder people don't see them, because the improvements are not designed to be seen. Unfortunately, that also means they can't really be marketed except in very niche scenarios.

</comment></comment></comment></comment><comment><USER9> I'm using Windows 8 with the aftermarket StarDock start menu, and I've pretty much forgotten that I'm not using Win7 until I accidentally blunder back into Metro. I thought Metro was really neat for the first 20 minutes after I upgraded - until I realized that the mail indicator inexplicably doesn't connect to Outlook. It works with Windows Live/Outlook.com/Hotmail, but not Microsoft's flagship office software suite.

</comment><comment><USER10> "Windows is done". What a final statement.

PC sales may be mostly done. A desktop that was bought 10 years ago can still run fine today - and many still are.

We reached a point in computing where upgrading doesn't make that big of a difference. You can use the same machine for a decade or more without problem if you're an end user, especially given so many rich web apps that don't require high processing power.

<comment><USER11> A Pentium 4 or Athlon XP 2700+ from 10 years ago has been unusable for all but the simplest tasks for years. It would have also needed to be upgraded along the way - it came from the factory with just 256MB or 512MB RAM. You can still edit office documents and do some light web-surfing, but for todays interactive sites and content it falls far behind the experience that an iPad can provide.

<comment><USER10> My mom still has no problem using QuickBooks and doing all the required web stuff at work with a Pentium 4 and 512mb ram. She literally just bought a new desktop because quickbooks requires it.

In an office environment, she really doesn't need more.

</comment></comment></comment><comment><USER12> So a guy who was wrong last time he said it, says it again. Ho humm.

Thing is I think we all believe that the demand for desktops or high end laptops is probably going to flatline. The classic example is graphics cards for games. 15 years ago, a generation of cards made a massive difference to the quality of the games visuals. Running Half-Life with software rendering was awful compared to my Voodoo2.

Nowadays the progress is purely a small refinement, my desktop from 3 years ago is still more than adequate. Meanwhile the other end of the scale people don't want a proper PC, they want a locked down, does what it can simply, with no side-effects life.

But to suggest the end of Windows is to ignore their core business model.

</comment><comment><USER13> The big question is - what else do we want a desktop to do that they can't already do?

I struggle to think of anything that Windows could add to its functionality that would make me want a new version.

<comment><USER14> There are still things that would benefit from faster PCs (e.g. VFX).

What I'm looking for is a form factor change to be part of the next wave (Post-PC as Apple says). Something I can carry around and have all my files on and be connected then plug in for bigger screens and more power.

Keeping all my files in the cloud is still a backup thing and not a live thing. Connections cost too much and aren't very reliable.

</comment></comment><comment><USER15> I love how it says "but the numbers show that Windows is coming to a dead end". So where are the numbers for Windows sales in this article, I just see PC sales. Typical journalism.

</comment><comment> alok-g >> but you know what device we'll still be using for most of our interactions? It will be a PC, simply because it's easier to enter data with a real keyboard than any other interface.

Real keyboards are nearly gone from the smartphone space. Several people I have spoken to assert that keyboards will also be gone from the workplace in a few years.

I have some ideas on how to enhance a real keyboard to make it more productive and ergonomic. My key motivation behind these comes from I myself wanting such a thing. However, I have been having mixed feelings about pursuing these due to mixed feedback from friends, primarily because they think keyboards/PCs are going away, or that getting external funding in this space would be nearly impossible.

Do you have any advice on whether this area is worth pursuing or not? Are PCs and real keyboards going to go away, or there are here to stay as OP says?

</comment><comment><USER16> As the article itself suggests, the better title would be "the desktop OS is dying (to an extent)".

The author states that desktop PC sales are declining, tablet sales are increasing, yet also states that sticking with Metro makes MS "idiots". Are they supposed to use the desktop UI on tablets? Of course not.

<comment><USER17> Of course, they are also not supposed to use a tablet UI on the desktop...

</comment></comment><comment><USER18> Windows isn't dead or dying. Laptop and desktop form factors aren't seen as the primary or only way to interact with software anymore. Windows is the king of desktop and laptop machines (by volume). iPad is the king of tablet/touch computing. Android via cheaper tablets is taking the lower end. So, where does Windows live on touch devices? Does it go head to head with the iPad or Android? I don't think it has the apps or mindshare to do that.

Desktop and laptops are shrinking as the primary platform of computing, and with it Windows. Shrinking, not dying.

</comment><comment><USER19> I don't think Windows is done because there's always going to be a market for cheap(er) laptops and desktops. My girlfriend is a teacher. She can't afford a Mac. She doesn't want a Chromebook because she spends time in locations with no internet connection. She'll be buying a Windows machine for THOSE reasons.

Someone could absolutely disrupt Microsoft in the low-price market (and who knows, Chromebook might get there) but we're not going to see everyone switch to Macs just because the new Windows isn't great.

<comment><USER20> I feel like there's some other alternative there...just having a hard time putting my finger on it...I heard it's really cheap, maybe even free?

</comment></comment><comment><USER21> Yes, the OS with +90% market share is done. Idiot....

<comment><USER17> I believe the point is that the market is shrinking, so Microsoft is now the leader in a segment that gets more irrelevant every quarter while unable to enter in any meaningful way to the mobile race.

<comment><USER22> Unable? I don't think so at all... Have you tried a Surface device? I got the Pro - it's a full operating system in a device the size of an iPad, with Intel i5 CPU and graphics. What's not to love?

I predict that Windows is going to be increasingly more available on smaller mobile devices. Not much of a prediction because to me it's obvious that's the direction they're heading in.

</comment></comment></comment><comment><USER23> A PC isn't a tablet nor is it a phone.

Microsoft should have their Windows people concentrate on the PC. Make it the best desktop device possible.

They need a separate mobile group. Keep Balmer as CEO but when it comes to mobile do the opposite of whatever he says. It worked for George: <http://www.tv.com/shows/seinfeld/the-opposite-2326/>

</comment><comment><USER24> The huge market may keep Windows in the game longer than anticipated is the often-overlooked monopoly they have with DirectX, and graphic drivers that work (reference to my recent experience using Ubuntu for a while with nVidia hardware)

</comment><comment><USER14> "Done" in the sense mainframes are done.

<comment><USER25> Very true; coding some COBOL in the background right now...

</comment></comment><comment><USER26> "I'm sure many people in 1491 thought that the Earth was flat, too."

You could look it up...

</comment><comment><USER27> Why is this on HN?

</comment><comment><USER28> It will be interesting to see Apple's Mac sales numbers this quarter. Last quarter they were down close to 20% year-over-year.

My personal theory for some of the loss in sales is that PCs are lasting much much longer than they used to. I just recently retired a laptop after using it for 6 years and am still rocking a quad core PC that is over 5 years old. My earlier computers were replaced earlier.

<comment><USER29> > _My personal theory..._

"The Real Reason No One's Buying PCs Anymore: They've Gotten Too Good" — [http://www.slate.com/blogs/future_tense/2013/04/12/why_pc_sa...](http://www.slate.com/blogs/future_tense/2013/04/12/why_pc_sales_are_declining_old_pcs_still_work_just_fine.html)

</comment></comment><comment><USER30> Does this mean it's time to lift the anti-monopoly restrictions on Microsoft and Windows?

<comment><USER31> It might, if the article weren't so ridiculously overstated.

</comment></comment><comment><USER6> It's a great time to be a Linux user.

10 Years ago, if you had told me that a linux-based OS would be beating Apple and Microsoft's offerings, I would have called you a pie-in-the-sky dreamer. Today, we're celebrating the natural conclusion of the Halloween Documents in pure Ghandi style; They ignored us, then they laughed at us, then they fought us. Now we've won.</comment>


It might be time for software engineers to unionize - <AUTHOR> http://michaelochurch.wordpress.com/2014/10/13/it-might-be-time-for-software-engineers-especially-in-silicon-valley-to-unionize/

<comment><USER2> Amen. Even as someone who is starting his own company, I fully support the idea of unions. Not just for our benefit; just as civil engineers have responsibilities that are wider than just their employers, we have ethical obligations to society that can transcend what our employers ask us to do. Software should make the world a better place, not worse, and it's our responsibility to make sure that we stand up in protest when we are asked to do things that aren't ethical.

</comment><comment><USER3> I don't understand the attraction of a union. And I did read the article. All of my personal interactions with unions have been negative. Literally all. That doesn't mean that they don't provide benefits, I just personally don't see them.

</comment><comment><USER4> It's one thing to know that the game is rigged in someone else's favor. It's another to watch the HN admins bury a post on unionization straight to page 6 mere seconds after it reached the front page (I saw the upvote count, so I'm 80% sure it didn't happen organically). Really brings it home.

<comment><USER5> Yes, pretty weird. Although, I am not sure if it is intentional. The submission before the OP(on the sixth page) is having vote count 9 and of 2113 days back. May be some ranking algorithm glitch.

<comment><USER4> Almost certainly not a glitch. As you saw, this post is buried among posts that are significantly older AND have lower votes. In the screenshots of the admin interface I recall seeing a "bury" option and wondering what it was for. Now I know :-)

EDIT: or not. I found the old post, I must have misremembered the bit about having a "slide off the front page" option:

[https://news.ycombinator.com/item?id=7972217](https://news.ycombinator.com/item?id=7972217)</comment></comment></comment>


Show HN: Commute to work in this retro browser-based game - <AUTHOR> http://www.traffic.city/ <comment><AUTHOR> OP here - Miss traffic?? I do! Check out Traffic City to relive your frenetic commuting experience.

This is a gameplay test. If it gets sufficient usage I might build a higher fidelity version.

Let me know what you think :D

 _Features_

\- Drive through a retro "3D" cityscape

\- Weave through traffic with keyboard controls

\- Get points when you pass sedans, SUVs, and semis

\- Save your top score

 _Tech_

\- HTML5 Canvas parallax 3D rendering engine

\- Pre-rendering with OffscreenCanvas and module Worker threads

\- Procedural traffic and map generation

\- 2-quadrant draw order sorting

\- MongoDB, Node, Express, Vanilla JS

NOTE - Only works on desktop & requires Chrome 80+ or similar

Code is not open sourced but I'm happy to do so given enough interest.

</comment><comment><USER2> little slow but i like it!</comment>


Ask HN: Advice for an introverted new team lead? - <AUTHOR> Hello HN,
It's that old question again, but this time it comes from maybe a slightly different place.
I'm a fairly introverted person. I've been a sysadmin for over 20 years, and always been happy to work from the back office up to my elbows in terminals and code. I've not sought out the spotlight, pushed to lead, nor tried to tell others what to do. I've always thought of that as something I simply couldn't do.
Recently I've been put forward for a team lead role, managing just a handful of devops positions. I've been highly praised for a whole slew of stuff, and now I'm a team lead, and way way way out of my comfort zone. If I am honest with myself, I am terrified of all the things that may go wrong.
HN, I need your advice on how to be an introverted team lead. Those of you with a similar outlook on life, how did you cope? How did you manage all the meetings, 1 to 1s, vendor calls, and more? Were there any books that helped you, and were there any that you would avoid like the plague?
Any advice will be deeply appreciated. <comment><USER2> I find that checklists, written plans and procedures, etc. can be a good way for the introverted to substitute for chatty, high-contact direction (and they are good for other reasons anyway). When you do a 1:1, having a previously agreed on list of objectives for that person (quarterly goals or whatever) that you can review, allows that list to do some of the talking for you (in some cases, it will deliver some of the bad news for you, i.e. "you did not accomplish this").

Similarly with vendor calls and other meetings, a published agenda beforehand helps to keep things focused and moving, and you don't have to do as much of the "let's talk about this now" direction of the conversation.

Also, if you have a more extroverted direct report, having them take minutes for the meeting helps to push some of the talking (e.g. review at the end of the meeting for who signed up to do what) onto someone else, in a way that doesn't undercut your authority. Also, if a detailed agenda has been published by you (e.g. by email) prior to the meeting, then you can even have a second run the meeting to a certain degree, while you focus on answering high-level technical questions that require your expertise. This still makes it clear that you are setting the agenda, but puts some of the talking onto someone who is happier to do that (and provides him/her with an opportunity for career growth).

Of course, not all of these are allowed or encouraged at a given organization or with a given customer, but I'm just throwing them out there as a possibility to consider.

<comment><AUTHOR> These are all great ideas, I'm really grateful to you for replying. Thank you!

</comment></comment><comment><USER3> Old dogs can learn new tricks. Take a public speaking class at the community college. Better yet, join Toast Masters.

These sorts of activities allow you to exercise skills outside of your work.</comment>


Mozilla launches a new identity - <AUTHOR> https://www.mozilla.org/en-US/ <comment><USER2> Discussion here too:

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

<comment><USER3> Yep. We moved most comments there, not counting the asinine race war.

</comment></comment><comment><USER4> This is gross. Moz://a ????</comment>


Please help get rid of normalize.css - <AUTHOR> https://github.com/necolas/normalize.css/issues/179

<comment><USER2> "The end goal of normalize.css should be to not exist (or realistically, to be extremely small)."

I'm fairly certain this is the first project I've ever seen where the end goal is obsolescence (while not being driven by profit). And that we're actually cheering for it.

<comment><USER3> Unless you consider projects outside of programming like organizations dedicated to ending poverty and disease.

<comment><USER2> Ah. Yes, well then those too. Although, I fear I won't see an end to either of those in my lifetime and (honestly speaking) the lifetime of our species.

<comment><USER4> Do you think that you will see an end to web browsers bugs in your lifetime? (given that they don't disappear...)

I don't because by now they should already be bug free....

<comment><USER2> I compare web browsers to liquid fueled rockets. Sure, they still blow up, but much less than when they were a relatively new technology. So much less in fact that we're willing to put people on them on a near-regular basis.

</comment></comment></comment></comment></comment><comment><AUTHOR> The post title comes from the @necolas's tweet: <https://twitter.com/necolas/status/329007362612555777>

</comment><comment><USER5> > _Then we can know when an issue has been resolved and plan to remove it from > normalize.css_

That sounds excellent, but what's really going to be "removed" from normalize.css is not merely the code for resolved issues, but more importantly official support for browser version X where version X+1 fixes the issue. Because browser vendors are not in the habit of backporting fixes to old versions. They simply release a new major version. IE 11 fixes some issue? Great, but it will mean nothing as long as you have to support IE 10.

normalize.css will finally become obsolete, not when all browsers fix all their issues, but much much later, when none of the browser versions we use today are used by more than 1% of the world's population anymore.

Nevertheless, it is refreshing to see a developer plan for the obsolescence of his beloved product, even if it will take 10-20 years.

<comment><USER6> CSSO might take care most of this issues: it removes overwritten elements. <http://bem.info/tools/csso/>

</comment></comment><comment><USER7> <http://meyerweb.com/eric/tools/css/reset/> \- Does that go the same for Reset CSS?

<comment><USER6> "Normalize" is an improvement of "Reset".</comment></comment>


Ditching Scrum for Kanban - The best decision we've made as a team - <AUTHOR> https://medium.com/cto-school/ditching-scrum-for-kanban-the-best-decision-we-ve-made-as-a-team-cd1167014a6f <comment><USER3> > The rituals, mainly the standups and grooming sessions, were fantastic. > Standups are a great way to keep everyone aligned on the work.

Can anyone elaborate why they find standups useful? The planning board should already communicate what's being done, what's been done and why people are blocked. I only find them helpful if some people in the team generally don't communicate well what they're up to (e.g. during daily work, over lunch). Otherwise I find most people zone out during the standup and it just interrupts work.

<comment><USER4> You get a quick status update of all the bits everyone is working on.

      Oh, Bob finished the xyz bit? Great I'll get started on abc now.
      Jim's stuck with the autobuzzulator? I've used those before, I'll jump in and give him a hand after the standup.
      Katie's not been able to deliver the turnip functionality? Still can't test the beets either then...

It should take no more than a few seconds per person and I find it far more effective than any agile status tool I've used, be that a physical board or an online system.

>> I only find them helpful if some people in the team generally don't communicate well what they're up to (e.g. during daily work, over lunch).

I communicate well with people I'm working with in the microcosm of what I'm doing _right now_ , but there may be a few other people on the team doing related tasks that I'm not talking to every day.

And lunchtime is my time to get a few minutes away from screens and work, take a walk, have some food etc.

<comment><USER5> If you were waiting on Bob to finish xyz, why does he wait up to a day before telling you he's done?

After doing scrum for a few years, my impression is that stand-ups are useless because you can't depend on them. They're frequently too far away to be used for the purposes you're talking about, so you always need an alternative. If that alternative is good, you might as well always use it and cancel the meeting.

<comment><USER4> I'm not sure I was waiting for bob, I probably have other tasks too.

I don't know of a better alternative that maintains the face to face element.

</comment></comment></comment></comment><comment><USER6> > Perhaps Kanban is better suited towards long-lived product development than > Scrum.

This is the key take-away. And in my experience this is absolutely true.

On the other hand, working now as a consultant where I am frequently on shorter-term projects with a definitive "end" for the engagement, the time- boxed sprint approach (or "Scrum") actually seems to work well.

Scrum might work for individual "projects". It does not scale or coalesce well with long-term development and maintenance.

> Perhaps there is indeed a natural progression of engineering teams adopting > Scrum, then moving to Kanban.

This also mirrors my experience.

<comment><USER7> I completely agree with this.

In shorthand, having been Product Manager for a number of teams at a variety of companies in several industries, I've found that Scrum is better for teams developing mostly new features, with relatively little maintenance; and Kanban better for teams focused primarily on maintenance, with fewer large features.

The rationale is really simple: for new feature launches, reporting and tracking vs. schedule is key; for maintenance, throughout is key.

That said, regularly missing predicted story points by more than about 10% is not the sign of a healthy team. Being bedeviled by routine bug fixes is not the sign of effective management. Both are routine issues that most highly- effective teams, whether Scurm or Kanban, deal with well.

</comment></comment><comment><USER8> Was the author's team just totally lacking a leader who could point out the patterns in underestimating the scope of work. If you are consistently missing your estimates, you adjust. Get to a point where you are consistently under- promising, and over-delivering. Morale problem solved. It's not rocket science.

That said, I agree that regular timelines aren't the only way to create a sense of urgency in your team.

<comment><USER9> It's not that easy.

If a team member gets sick for a week, it can already be impossible to meet the goals of a two-week sprint.

It happens (not so often, but it does) that we underestimate the complexity of a task by a factor 5 or so; that alone can also make it impossible to meet the goals.

There are just too many things that lead to building pressure when there's no actual need for pressure from a business point of view.

<comment><USER8> Estimation is just educated guessing. If you were guessing a non-randomly generated number, and you found you were guessing high every single time, wouldn't you eventually try reducing by orders of magnitude?

Team members do get sick, scope tends to sprawl, and life just generally gets in the way; but good estimation includes a buffer. Under-promise and over- deliver, at least until you figure out what you're doing.

</comment></comment></comment><comment><USER10> I love this. We briefly flirted with scrum but now just have a much more Kanban-like system now, too. The only issue I foresee long term is that the sprint mentality of Scrum might recharge people and get them to, well, sprint, at product goals. Kanban, because it is never ending, might start to feel like a slog. There is never a way to have that feeling of "wow, we crushed it and cleared out our list. We are awesome." The list just extends forever. We have put measures in to help with this: primarily just having our engineers say at the beginning of the week what they hope/plan to get done this week (or two). Sometimes that is just noting subtasks in pursuit of a larger feature, but at least it borrows some of what is a very powerful part of Scrum: the social commitment that comes from standing up and saying "this is what I will finish this sprint."

<comment><USER11> I see it the other way round. We're doing Scrum (ish, I guess) right now, and the see-saw between either ending a sprint with a couple of late-night panic sessions to get everything out of the door, or ending it with most of the team kicking their heels with one pair still going up to the deadline is what feels like the slog. I see Kanban as much smoother: I don't see artificial, self- imposed crunch mode every fortnight as a positive. It's all very well aiming at a social commitment, but the way it works in practice is either a) you under-estimate and have dead time; b) you over-estimate and crunch; or c) you nail it and one sprint runs smoothly into the next. The trap is that c) never happens.

I think what makes the difference is that we're continuously delivering, so there's no delivery ceremony between one sprint and the next to make the crunch mode mean something.

<comment><USER12> The crunch approach to sprints is the killer. If you know you can't complete all the work in a sprint the answer should not be to bust yourself to try and complete it. Have a conversation with yourselves and the product owner to readdress what you can realistically achieve in the time remaining and then do that.

It's a really hard thing to do, we all want to be the hero that saves the sprint. It also encourages you to end up with lots of discrete chunks of work in a sprint so you can complete 80% of your initial commitment and salvage a sense of achievement rather than getting 80% through a few big tasks but none of them actually done.

A sprint with 4 developers and 4 tasks each estimated to take 2 weeks will almost never succeed. A sprint with 4 developers and 20 tasks each estimated to take a day or two stands a much better chance of success. Combine that with some metrics around "complexity per developer per available day" and you quickly end up with some charts showing productivity that is hopefully improving which will hopefully improve morale.

</comment></comment></comment><comment><USER13> Waiting for this title: "Ignoring waterfall and agile fads while sticking with Boehm spiral model (1986), good management, minimal meetings/paperwork, regular code reviews, and usage-driven testing. Best decision I ever made."

Haven't seen it yet but it's worked for many organizations and projects. For decades. Surely some improvements since then but one has to wonder what the useless-to-critical ratio is in activities of the new things. It still isn't clear to me.

<comment><USER14> +1. I was taught this as a young lad at Intel by a graybeard who'd been developing since the 60s. It made a lot of sense then, and it makes a lot of sense now.

</comment></comment><comment><USER15> I really like KanBan and think it's a better fit for a lot of teams than SCRUM is. SCRUM works great for teams which have a stable backlog of work and an incidental problem that might pop up. If you can't keep a backlog stable for three weeks, you shouldn't do scrum. KanBan allows you to pick and choose practices from scrum that do add value, and ignore the ones you are just doing to follow the book.

I worked in a team for 2 years that tried to do scrum because it's new thing that everyone should be doing and I feel it added nothing of value.

<comment><USER12> If you can't keep a backlog stable for a few weeks then you aren't doing project work you're on support or firefighting. Scrum is all about IT project work, Kanban is a more general "efficiently get a pile of tasks done" process which can apply to small IT tasks or building a car.

<comment><USER16> Depends where you are in your product lifecycle. Pre-product market fit, it's often a bad idea to build and keep a stable backlog a few weeks in length.

</comment></comment></comment><comment><USER17> The context and mode defines your process: agile, lean or six sigma. Most companies have no clear understanding about their context (should read Simon Wardley [1]) or mode.

Very good video from Markus Andrezak explaining the three "modes":

[https://vimeo.com/146522220](https://vimeo.com/146522220) (Must see)

"The biggest mistake companies can make is to define their (one) process, culture, way of work. The work that needs to be done in a sustainable company differs in at least three fundamental ways."

[1] Simon Wardley and Markus also explain why bimodal IT does not work

<comment><USER18> Any text links? Thanks.

<comment><USER17> Simon Wardley blogs at [http://blog.gardeviance.org/](http://blog.gardeviance.org/)

One link is [http://blog.gardeviance.org/2015/10/agile-vs-lean-vs-six- sig...](http://blog.gardeviance.org/2015/10/agile-vs-lean-vs-six-sigma.html)

(I'm sure his view and his value maps on strategy will be huge in 5 years, although he is relativly unknown today)

<comment><USER19> thats' a very interesting blog on strategy. Thanks for that - the only problem I see is that the "settlers" analogy has no real life mapping (unlike Pioneers <-> scrum and TownPlanners <-> six sigma).

</comment></comment></comment></comment><comment><USER12> As someone in similar circumstances a couple of things jump out which trouble me:

Project Managers - That this role is mentioned, but not that of Scrum Master, is odd but unsurprising. PMs aren't mentioned in Scrum at all and often the way they want to do things clashes with the Scrum way of doing things. In the given example of the PM moaning about estimation Scrum at least forces that realisation quickly, something which Kanban lacks. There may well have been a Scrum Master, one of the things I've experienced them doing is guiding my team down from 1 month sprints through 2 week ones down to a single week. "It's really hard to plan for 2 weeks work" is a classic moment for the Scrum Master to say "what about..."

"We tossed out the retrospectives" \- Despite acknowledging them as a good thing? For me retrospectives are the most powerful part of Scrum. Stopping retrospectives might save you a few hours and some awkward conversations but is likely to hamper your continued development. Scrum is really good about moving a team to the "conscious incompetent" phase - i.e. you are forced to be aware you are bad at something and really need to work on it. Retrospectives are the way to improve and grow.

"We kept our deadlines" \- That you had deadlines (again the sign of a PM somewhere), and view them as important enough to mention again is interesting. It hints at quality not being the most import factor, which is one of the keys to doing Scrum well.

For me moving to Kanban was a fix for a Scrum team that wasn't working well. I've worked on a good Scrum team, that took a while to get going, but got there by being able to be open and honest about poor morale and then dealing with it. The new team didn't get there, we moved to Kanban and while everyone is happier our productivity is much, much lower. I do feel there is a place for switching to Kanban - when the scope of the project has moved into "we know how to do this" space, often close to a major release (if you do infrequent releases) where 3rd party involvement plays havoc with planning. If you're dealing with points high on the "the business don't know what they want" or "we don't know how to do this" chart then, for me, Scrum is still king. If you're high on both axes then you might want to switch projects / companies...

<comment><USER20> One of the biggest problems with Scrum (as mentioned in other comments) is that in a lot of large companies you have strong top-down enforcement of budgets, deadlines & expectations, which usually means the PMO is in control. This means you end up with a project manager as an awkward intermediary between the stakeholders & the product team. In almost every case, the product owner should be the project manager, but this very rarely happens in enterprise, and Scrum fails.

<comment><USER12> I agree with that assessment except for "the product owner should be the project manager". I do internal dev so product owners are from the business and know the problem domain and (with our help) know what they want. It's going to be different for software for selling - but still, the project owner should be the person with the vision who is the "single wringable neck", they should be responsible for negotiating on budget, deadlines etc. The job of being a PM is always going to be in tension with that of the PO, I can see them forming a good team but fundamentally the PM is the representative of management imposed from above.

<comment><USER20> I should have been clearer. I meant the tech-side PO. There has to be a PO in the IT org If there isn't, the product will languish under the weight of mounting technical debt and eventually die. The same often happens if there's no biz-side PO, but in those cases someone from the tech org usually adopts the product and just does their best, for better or for worse.

</comment></comment></comment></comment><comment><USER21> The team I was previously on tried to use Scrum and seemed to naturally fall into a similar model to Kanban; we got rid of what helped, and stopped doing what didn't. It was an amazing relief, especially since Scrum sprints and the numbers just weren't working.

Sadly, our Scrumlessness was found out and it was implemented again shortly before I left. Morale was dropping steadily on the team already (unrelated reasons), reimplementing the parts we already knew didn't work was a bummer, and the Scrum leader talked down to me when I tried to advocate for the team.

<comment><USER22> It is really stupid to NOT allow any team choose its own process. Your scrum leader is not a wise person, to put it lightly.

<comment><USER21> I think the most frustrating part was that I explained we had tried Scrum and adapted it for our team's needs. We weren't anti-Scrum, we just found a way to make it work for us. I was then told "[Company] is a Scrum company. We all use Scrum as it is" and was brushed off. Same Scrum leader would yell at the operations team for failing to complete sprints in time when servers fell over, and other nastiness that becomes the priority when you work in a position where you prioritize server health and function over new builds and features.

The other Scrum leader we had was pretty great, but, unfortunately, was not the one assigned to my team.

Sorry if this borders on ranting. I really enjoyed working for that company, but it was a rough time toward the end of duration there. Apparently I have lingering frustrations, especially since I'm still friendly with many on the ops team. :)

</comment></comment></comment><comment><USER23> I think the value of Scrum is that it provides great visibility into development for stakeholders. They can see the progress of the backlog and know what's being committed to every sprint. It does put some artificial boundaries on work getting done, but I think it strikes a good balance between pure agile and keeping business happy.

</comment><comment><USER24> Remember the triple constraints of cost, scope and time. If you are going to commit to releasing at a certain time you are going to have to let the scope slide. (Sometimes you can add more people on a 2 week basis but the ramp up time makes it usually impractical.)

<comment> T-hawk And this is exactly the difference between Scrum and Kanban. Scrum fixes the time periods and allows for adjusting scope, by cutting stories and features. Kanban fixes the scope while allowing the time period to be open-ended. Which methodology is more appropriate depends on which constraint a business wants or needs to optimize for.

<comment><USER24> It is even better to do something hybrid that is tuned to the application.

A bad thing about scrum is that it introduces a lot of phony deadlines that have nothing to do with the business; this is like the common practice of the boss setting a short deadline on the hope that they can control the cost (total hours) by controlling calendar time.

On the other hand having a release every two weeks means you actually need a release. There are so many projects where a few programmers spend say 1.5 years building a components and hypothetically the application is feature complete, but they are nowhere near running it on a real server or packing it up for the customer with an installer and all that and it takes another 0.5-1 yr to figure out how to make a release.

Then there is a stressful process of making a few more releases to fix the inevitable problems, then they go off and work another 2 yrs on the next release and then find they've forgotten how to make a release. The best thing about scrum is that it avoids that.

The idea that the phony deadline is fixed is another problem. If you can slip the schedule by 2 or 3 days in scrum to address critical things in the scope there that is no problem but many agilists will fight that.

Another failure mode is the project that is hitting the goals for milestones well (estimating things about 10% accurately) and that makes people feel good, but somehow you never get to the last milestone.

I came in late and helped finish one of those severely troubled projects where there was a huge amount of blame to go around. Scrum and Kanban concepts were being used by teams involved, but a lot of people on my team including the boss and star programmer would not do what scrum required. My boss would bitch me out for making "rediculous" estimates of 4 hours to do something that involved a 45 minute build process and I wondered how the other people on the team didn't have this and I found I was the only one who was serious about estimating and that the star programmer did not do it at all.

In the end we gave up on scrum and got heavy on checklists. We made a checklist with about 300 steps for a release process and it a was a stressful process but we learned how to do it reliably. Also we had a checklist of things to have done before the final release.

It was not pretty but we did cross the finish line and get the product in front of customers and they liked it, so I felt I did my part and felt free to move on when it was done.

</comment></comment></comment><comment><USER25> > Say what you want about our supposed inability to estimate, but I challenge > any team to nail estimates within a 20% margin for a large feature on a > large app.

Not to be pessimistic but this sounds like stories and tasks needed to be broken out in even finer detail.

<comment><USER26> I think that's a fair assessment. If people can grasp creating small independent deliverables for their projects (of any size) then things become a lot easier to estimate. Monitor velocity and pull less into future sprints if you're still getting it wrong.

If there is a piece of functionality that brings unfamiliarity to the delivery team then create a spike ticket to investigate (though use them sparingly).

If you break things down small enough, really understand your velocity and have a transparent relationship with your product owner then there should be no need for any stress from anyone.

</comment></comment><comment><USER27> We've used Kanban (or something like it) for 20 years. Long before Kanban existed as a thing. Near the end of a project, we'd draw up the "finishers' list" with numbered items and initials next to each. Daily team review of each remaining item, reassign priority or responsibility as needed.

</comment><comment><USER28> It sounds like you got a lot of positive things out of it. Which is great. Also great that you are iterating and not sticking to what the coach gave you. My take on what made many elements of SCRUM work for me follows.

2-3 hour backlog grooming sessions is a warning sign. Of what I couldn't say but maybe it is time to evaluate team size or how meetings are being conducted. Push as much stuff out of meetings as possible.

If you have a morale issue due to stuff slipping (and I suspect maybe you didn't capture everything in this post) then it may not be planned sprints that are the issue. Expectations that people have of themselves and of the team are something you are free to set. I think SCRUM tend to end poorly for developers because they are placed on top of dysfunctional systems of expectation that discourage many kinds of failure.

I am perfectly happy abusing SCRUM and letting things slip from sprint to sprint sometimes excessively. Fitting things into 2 weeks was a goal to gain the benefits of constrained scope and clearly articulated and designed implementations or requirements, but failure is something I made sure to embrace. Sure we had retrospectives to see what could be learned and what we could do better, but you have to be very careful to make sure it isn't second guessing or moving the goal posts. You shouldn't fault people pretty much ever as part of SCRUM, but definitely don't fault them for slippage. There should be next to no onus on an assignee for a task to prove they did the right thing.

IMO That kind of feedback comes best out of band on a very macro scale when there is a pattern of failure for an individual to address AND you must get buy in from the individual that there is improvement to be had. The reason I stress this is that I don't want people to try and avoid things that they might fail at. That pushes people away from important work that needs to be done.

I think that planned sprints and retrospectives are the 1-2 punch of SCRUM. By estimating what you should be capable of you are then capable of reasonably identifying WHY you didn't achieve that and trying things until there is improvement or you establish that the estimates are wrong. SCRUM without high functioning retrospectives is missing 50% of the goodness IMO.

It's great that you kept regularly scheduled meetings. There is a huge amount of buy in, knowledge sharing, and consensus you get for relatively low cost by having regularly scheduled meetings. With small enough teams you can get it all done with one hour long interrupt per week. Socially it's also good because it discourages backroom deals, planning, and cliques which are toxic. Doubly so if you have remote workers.

<comment><USER29> That long grooming session _IS_ a warning sign. I recall working for one disaster where we were required to have one grooming session for us (1 hour) and then it got re-groomed the same week where we heard all the tickets again.

It should be sufficient for someone to lead and assign tickets as they come in, and for people to talk to people and reassign them as needed.

Again, if you need status on something, don't have a 2-3 hour long meeting, just ask... because when you have a long meeting and only 2 people out of, say, 8, are engaged at the same time, those other people are being very expensive and are getting bored fast.

The team's velocity is what it is - retrospectives can be boiled down to a "hey, how are things working out" that you can fit into a standard team meeting IMHO. Doesn't need it's own time slot, and this can also prevent retros turning into "throw X under the bus / CYA" type meetings. You can also get a lot of this from 1:1 conversations, and probably in greater depth in that context.

</comment></comment><comment><USER30> I've preferred Kanban for a while now.

When I started doing work on a git-flow/feature branch basis, the sprints lost their value to me. I've begun to wonder if the sprints were simply an artefact from poor practices in old CVS/SVN workflows (like needing a short, regular stabilizition and release cycle)?

</comment><comment><USER31> I read this article hoping to learn what "kanban" really is.

From the text, it seems like it's scrum, but without having a deadline every sprint for what you committed to at the start of it.

And... that sounds exactly like the Pivotal school XP I've been doing for 10 years.

Words, words, words...

<comment><USER32> The commonly understood aspects of Kanban is that it is a pull (team members assign themselves work based on priorities) system that has a 'work in progress' limit - ie the most number of items a team/person can work on at once. If something urgent comes up that needs working on right now, something else will need to go back on hold.

Kanban works best when tasks are explicitly prioritised against each other.

</comment></comment><comment><USER33> Scrum is supposed to be about regular feedback and sustainable pace, not motivation.

</comment><comment><USER34> Can anyone recommend a good, concise book on Kanban in software - <USER2> without mingling in Scrum?

There are multiple titles that come up on an Amazon search, all with similar review scores.

</comment><comment><USER35> Would people recommend a team moving directly to Kanban, or is it useful to learn/use Scrum first?

What books/resources would people recommend to learn Kanban effectively?

<comment><USER36> >is it useful to learn/use Scrum first?

'Smart people learn from their mistakes. But the real sharp ones learn from the mistakes of others.'

</comment></comment><comment><USER37> I was curious to understand what exactly software managers were calling by "kanban" now that the name is fashionable.

Well, I was not disappointed. The articles talks about everything, except anything marginally related to the meaning of "kanban" in manufacturing.

<comment><USER38> Can you elaborate?

<comment><USER37> In physical production (where it comes from), kanban is a lean method for ensuring that you don't spend on producing right now something that is not needed right now.

It works by tokens that "pull" the production from other productive unities that are ultimately "pulled" from external (client) demand.

The article talks about all kinds of rituals and gains, but never once touches that "pulling" activity that is central to the concept, nor the lean objective.

<comment><USER38> Thanks. I'll confess to being a Kanban noob. Do you have any resources that you can share? Looking with Google seems to present more of this sort of article.

<comment><USER37> Wikipedia has a surprisingly good explanation:

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

There's a link to Toyota's site at the bottom, as the inventors, they have plenty of authority on it.

Wikipedia has also an article about Kanban in software development. As expected, the introduction does not even make sense, but the methodology section contains a form of continuous improvement, what could work. Also, I could not understand how any of the experiences related on the article could come from the Wiki's methodology - it has probably no relation at all with was implemented at the author's place.

</comment></comment></comment></comment></comment><comment><USER5> This really resonates with me. My experience with scrum was very similar, and I thought Kanban might be a nice answer to the arbitrary deadlines that frustrated me. Never got a chance to try it, though.

</comment><comment><USER39> Waiting for the follow up post on how he's ditching kanban for X next.

<comment><USER40> Wampaku has worked out very well for my team.

</comment></comment><comment><USER41> Sounds like they're about to throw out Kanban in favor of quitting</comment>


IT Does Not Love iPads, and that's a good sign - <AUTHOR> http://speirs.org/blog/2013/4/27/it-does-not-love-ipads-and-thats-a-good-sign.html

<comment><USER2> The blogger doesn't understand enterprise issues and does not seem to have any large-scale deployment experience, and this makes the blog entry next to useless. It's just the opinion of yet another blogger.

</comment><comment><USER3> > It's 2013 and the fact that iOS is not a multi-user operating system is > still coming as a shock to some people?

Wait…it's 2013 and people still buy single-user operating systems?</comment>


An Odd Couple: Samuel Beckett and Buster Keaton - <AUTHOR> http://www.movingimagearchivenews.org/an-odd-couple-samuel-beckett-buster-keaton/ <comment><USER2> So the director Schneider found the script "fairly baffling when not downright inscrutable" and "loved it even when [he] wasn't completely sure what Sam meant."

But "Schneider supposedly considered Keaton not smart enough to get what Beckett was up to."

Fun.

Though it seems to me that Keaton was clever enough to stage a little Beckett- esque drama when first meeting the playwright.

</comment><comment><USER3> Kind of odd to say that a famous playwright and a famous silent film star who were roughly close in age would make an odd couple.

<comment><USER4> It makes sense to call them that on a superficial view, since they were culturally at opposite ends of the universe: Beckett was avoid-success-at-all- costs highbrow and Keaton was vaudeville, slapstick and a (formerly) huge popular star. On a closer view, though, or even a second glance, the affinity is obvious.

</comment></comment><comment><USER5> Damn! Now I _really_ want to see that film!

</comment><comment><USER6> Oh boy...</comment>


Community Management 101: All Members Are Equal - <AUTHOR> https://artplusmarketing.com/community-management-101-all-members-are-equal-618d8e8b156d <comment><AUTHOR> Note that before you comment, realise a few things:

1\. I didn't mention any specific examples because I thought they should be banned, just because they're popular examples of users or companies on social media sites.

2\. As I mentioned in the article, it's very unlikely a single user is key to your site functioning/your community staying popular. Real life is not House. You are practically never required to tolerate a sociopathic jackass because he/she is so brilliant the world can't go on without them.

The fact so many community managers, admins, bosses and owners don't believe that is exactly why so many communities are terrible.</comment>


I Am a Climate Researcher, and I Love Fossil Fuels - <AUTHOR> https://www.masterresource.org/india-energy/climate-researcher-pro-fossil-fuels/ <comment><USER2> > My love for fossil fuels, especially coal, is not just because they pose no > threat to our climate.

...right.</comment>


The Right Response to the Libra Threat - <AUTHOR> https://www.project-syndicate.org/commentary/regulating-private-money-facebook-libra-by-katharina-pistor-and-co-pierre-georg-2019-08 <comment><USER2> Those seem like scenarios that would necessarily involve this crypto currency actually being successful. That in itself is terribly unlikely. At best, it'll end up being a Facebook-only token that inevitably becomes cash.

Unless Facebook and Amazon had a demonic love-child beast of a system... Perish the thought.

</comment><comment><USER3> Is there a reason why Libra might upend bitcoin? If not, then why worry at all?

</comment><comment><USER4> Crypto.</comment>