How to make a hero: Opium and etymology - <AUTHOR> https://www.the-tls.co.uk/articles/public/hero-lee-child/ <comment><USER2> From the article: _the first deliberate cultivation of the poppy, as opposed to its casual collection, seems to have happened in Mesopotamia over 5,000 years ago, organized by the local Sumerians, who called their crop hul gil, which translates as "the joy plant"._

At the risk of being pedantic, I wrote an entire post about how this is completely wrong, tracing the origins of the error back to a confused Victorian writer:

[https://resobscura.blogspot.com/2018/08/opium-or-cucumber- de...](https://resobscura.blogspot.com/2018/08/opium-or-cucumber-debunking- myth-about.html)

</comment><comment><USER3> I was vexed but also oddly satisfied when he left off the question unanswered, leaving off with a cliffhanger at the end, such an ornate thing to do in current age of all-knowing Medium posts. I loved it, although then realized it's a teaser for his book on the subject.

This article led me to look into the etymology, it is indeed obscure: "According to tradition the word was coined with chemical suffix -ine (German -in) + Greek hērōs "hero" because of the euphoric feeling the drug provides, but no evidence for this seems to have been found so far" ([https://www.etymonline.com/word/heroin](https://www.etymonline.com/word/heroin))

Here's a great article on the history of opium and its use: [https://www.afghanistan-analysts.org/on-the-cultural- history...](https://www.afghanistan-analysts.org/on-the-cultural-history-of- opium-and-how-poppy-came-to-afghanistan/). From here we learn that:

"Another sign that the opium poppy came late to Afghanistan is that there does not seem to be an original Persian name for the plant. In Afghanistan, a Turkic word – koknar – is used; kok mean "green" and nar means "pomegranate" (anar in Persian), which may be an allusion to the poppy pod's shape. Opium is locally called taryak, which comes from the old Greek word theriac (7); in the Middle East and south Asia, this word is used more widely than just for opium."

In Turkey the word _afyon_ is used (there's even a province named after it ([https://en.wikipedia.org/wiki/Afyonkarahisar#Etymology)](https://en.wikipedia.org/wiki/Afyonkarahisar#Etymology\))) which is from Arabic آفيون ([https://www.nisanyansozluk.com/?k=Afyon](https://www.nisanyansozluk.com/?k=Afyon)), which itself was derived from the same Ancient Greek word that opium is derived from: όπος.

Interestingly according to Wikipedia early use of in China was "to aid masculinity, strengthen sperm and regain vigor" ([https://en.wikipedia.org/wiki/Opium#China](https://en.wikipedia.org/wiki/Opium#China)), understanding how/why a sedative was used as a Viagra-like purpose is beyond me.

The Chinese word is 鴉片 which also is derived from opium ([https://en.wiktionary.org/wiki/%E9%B4%89%E7%89%87](https://en.wiktionary.org/wiki/%E9%B4%89%E7%89%87)). It's rare to see a words from around the world to refer to something that ancient people knew to be derived from the same word.

<comment><USER4> It's an extract from a book, I suppose the question is not the end of an article but the beginning of a chapter.

</comment></comment><comment><USER5> Isn't the -in suffix in German supposed to make a noun feminine? So like 'heroin' would actually be a 'heroine,' i.e. the thing whose spelling is often confused for it in English? I dunno, my German is _schlecht_.

The thing about the "ba-ba-rians"... that sort of thing is everywhere. For example Slavs, as a certain people's name for themselves, seems to be related to the word "word" (slava or slova). They seem to be saying that a Slav is someone who speaks our language, i.e. someone who speaks words instead of that nonsense the others are always babbling!

<comment><USER6> > Isn't the -in suffix in German supposed to make a noun feminine? So like > 'heroin' would actually be a 'heroine,'

There is indeed a word "heroin" in German with that meaning, but it is stressed on the "o", while the drug is stressed on the "i" (The feminizing "-in" suffix is never stressed, while the "chemical" "-in" suffix is always stressed).

</comment></comment><comment><USER7> "Words should be more like knives than pillows. Which is not to say they should never change." They cut rather than cushion, but can dull over time? What's your interpretation?

<comment><USER4> I read the knife allusion to mean a tool of use, considering his stance made clear earlier on.

</comment></comment><comment><USER8> I thought it was relatively well known that heroin was named after the 'heroic' discovery of an opiate that wasn't addictive (or so they thought).

</comment><comment><USER7> They cut rather than cushion, but can dull over time? What's your interpretation?</comment>


Reddit offers custom domain names and styles - <AUTHOR> http://blog.reddit.com/2008/08/now-you-can-restyle-and-host-your.html

<comment><USER2> Is slinkset toast..?

<comment><USER3> Reddit doesn't offer RSS submissions, does it?

<comment><USER2> Can you elaborate?

<comment><USER3> Slinkset lets you populate a social news site with submissions from a collection of RSS feeds. This is great for populating sites that are just starting out, and can also be used simply as an RSS aggregator. I don't think Reddit offers this functionality.</comment></comment></comment></comment>


Rick Dickinson, Sinclair ZX80, ZX81, Spectrum Case Designer, Has Died - <AUTHOR> https://en.wikipedia.org/wiki/Rick_Dickinson <comment><AUTHOR> Notice of his death posted at [1]

[1] [http://www.qlforum.co.uk/viewtopic.php?f=12&t=2423&sid=0c176...](http://www.qlforum.co.uk/viewtopic.php?f=12&t=2423&sid=0c176ad1bf7450697794459c97cdc794)</comment>


'We have a fire in the cockpit!': the Apollo 1 disaster 50 years later - <AUTHOR> https://www.washingtonpost.com/news/speaking-of-science/wp/2017/01/26/50-years-ago-three-astronauts-died-in-the-apollo-1-fire/ <comment><USER2> I'm surprised nobody has mentioned the Ars Technica story that was on the front page a couple of days back: [https://arstechnica.co.uk/science/2017/01/apollo-1-fire- inve...](https://arstechnica.co.uk/science/2017/01/apollo-1-fire- investigation/)

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

<comment><USER3> In that discussion, see the comment of "19670127", he first say he remembered "Batman" to be interrupted on ABC with the news. Then he discovered that "Batman" wasn't in ABC's Friday prime time schedule. Is it possible that the described interruption happened before the prime time?

The event happened 23:31:19 UTC Jan 27 1967, says Wikipedia.

</comment></comment><comment><USER4> > It was a lesson NASA would have to learn again after the space shuttle > Challenger disaster. And again after the space shuttle Columbia disaster.

So... it's a lesson NASA hasn't learned?

I see the same phenomenon in the software industry (with less terrible consequences) where attention to quality spikes after disasters and then subsides over time as complacency sets back in.

<comment><USER5> I don't think that Challenger and Columbia suffered the same problems. They weren't even close.

Unless the problem is "there was some lack of understanding in the potential danger of it, and everything should be aborted setting a lower acceptable risk", or something like that.

Which would not only impacted and prevented Challenger and Columbia, but would have stopped probably all other missions, since it's impossible to know for sure how high or low the acceptable-risk-bar should be put.

<comment><USER6> Didn't Feynman famously conclude that Challenger was largely to the blame of a culture that didn't respect safety over timeline and budget? That part felt a lot like Apollo 1. I recall reading that there was a fundamental ignorance at critical levels of management t on how risk is even measured.

<comment><USER5> Yes, in the end it can be disrespect for safety... but in the long run, it's easy to miss details that can lead to problems or disasters.

Sometimes one person misses reporting something that seemed to be small, but have consequences. Sometimes one reports so much because, well, "hey I warned", but it gets lost on many others warnings that were issued and didn't happen, and people aren't sensitive to warnings anymore.

It's not easy to set the limit on where everybody should be worried and where it's just acceptable or even noticed.

</comment></comment></comment></comment><comment><USER7> I must admit that I first started reading about the details from the Apollo 1 disaster after hearing the Public Service Broadcasting[0] song "Fire In The Cockpit" from their "Race for Space" album. The album is a concept album about the American and Soviet space race using samples from various speeches, news shows and NASA public relation stuff.

The band says about the song (which they never play at their live shows):

> "The fire on Apollo 1 was such an important and terrible chapter in the > program that it felt wrong to leave it out of our version of the story. > [...] We wanted to treat it with respect and not come up with some trite or > overly emotional song, so we just kept it very, very simple and tried to pay > a quiet, but terrifying tribute to those three men."[0]

There is so much historic stuff in this album that I can highly recommend it to anyone interested in the history of space missions.

[0] [http://publicservicebroadcasting.net/](http://publicservicebroadcasting.net/) [1] [http://www.songfacts.com/detail.php?id=37821](http://www.songfacts.com/detail.php?id=37821)

</comment><comment><USER8> Also, tomorrow is 31 years since Challenger:

[http://www.nytimes.com/learning/general/onthisday/big/0128.h...](http://www.nytimes.com/learning/general/onthisday/big/0128.html)

I was in 8th grade. People still watched the shuttle launches on TV then. It was on in many of the classrooms, but the bell rang to switch periods shortly before launch. I was moving between rooms when I heard someone say something about an explosion. I ducked into the nearest room where the TV was on. I'll never forgot the images of that day.

Also, Feb 1 will be 14 years for Columbia. It never occurred to me before how close together on the calendar all three events are.

</comment><comment><USER9> I guess this 'web' link trick doesn't work anymore

<comment><USER10> This is probably a really stupid question (yet to have my morning cup of earl grey), but which failing trick are you referring to?

<comment><USER11> There's a link called "web" on this page that links to Google:

[https://www.google.com/search?q=%E2%80%98We%20have%20a%20fir...](https://www.google.com/search?q=%E2%80%98We%20have%20a%20fire%20in%20the%20cockpit!%E2%80%99%3A%20the%20Apollo%201%20disaster%2050%20years%20later)

It lets you into news sites that have some sort of paywall/registration requirement, but that whitelist Google.

<comment><USER12> Isn't that cloaking which is against Google's webmaster guidelines? [https://support.google.com/webmasters/answer/66355?hl=en](https://support.google.com/webmasters/answer/66355?hl=en)

[EDIT] Apparently they have added "First click free" policy [https://support.google.com/news/publisher/answer/40543?hl=en](https://support.google.com/news/publisher/answer/40543?hl=en)</comment></comment></comment></comment>


Here's Why Gmail and Google Chrome Had Issues Yesterday - <AUTHOR> http://www.geekosystem.com/google-explains-outage/

<comment><USER2> Well as mentioned in the article the scariest thing is our dependency on cloud services which their issues could propagate to us and affect our working day and productivity.</comment>


Virtual Art Session - <AUTHOR> https://virtualart.chromeexperiments.com/artists/harald-belker/sessions/superhero-car/ <comment><USER2> It looks really cool, but I'm not sure what I'm watching.</comment>


Ways To Get People To Do Things They Don't Want To Do - <AUTHOR> http://www.nirandfar.com/2012/12/ways-to-get-people-to-do-things-they-dont-want-to-do.html

<comment><USER2> The author answers the question only partially in my opinion. Sure, we should seek to minimise the impact of crappy tasks, but the best way to motivate people to "do things they don't want to do" is to turn the lousy things into things that they do want to do.

That starts with treating people like adults, and explaining the underlying reasons for the tasks. It also means listening to the people who will be doing the work, having genuine empathy with their situation and changing or reallocating the tasks accordingly. It also means giving autonomy and control to the people doing the tasks to allow them to perform the tasks under their own terms.

If it is not meaningful work, then perhaps it should not be done at all. Indeed your job as a manager is primarily to provide aircover to team members, as getting rid of overhead tasks will allow the team time and energy to focus on the main job.

For those tasks that are not removable, the manager needs to create sense out of it all, explaining why the pain has to occur and how they are helping to mitigate the pain. At one firm, for example, we removed an onerous task from a large number of senior managers by giving it to an external consultant (me), who was instructed to do an "OK" job, as other priorities were senior. Other approaches are to have an off-site meeting to do the work, to gamify the process (hackneyed I know), but most importantly to, as managers, keep challenging the need for any make-work.

</comment><comment><USER3> A little off-topic, but is anyone else really dumbfounded by the amount of websites lately that use a top notification header that pushes content down? It's really jarring and annoying.

<comment><USER4> Yes. I find this particularly annoying when using an immersive/chrome-less browser. In my case I'm using IE10 on a Surface and the header acts like chrome and is distrcting

bleh

edit: just noticed that in this particular site you can hide it with the arrow on the right</comment></comment>


Ask HN: Good, balanced, fair policies on use of social networks? - <AUTHOR>

Folks, I'm looking for examples of good company policies on the use of social networks. Notice the judgement-laden word, "good": I'm hoping for policies that much of the HN crowd would respect, policies that respect the line between work life and personal life, between being asked to do things in accordance with one's principles and preferences and being directed to do things that may violate those principles and preferences, etc.
We'd like our employees to promote us, at least by keeping their LinkedIn, et al, accounts up to date - and that might be about it. We also want clear principles and guidelines that our HR and admin staff can follow when doing their work, so that they don't step over the line in an enthusiastic and well-meant moment - and we don't want detailed rules, because those constrain rather than inform.
Sure, sure, I could spend some crafting just the right words, but being of the "lazy developer school", I'd rather stand on the shoulders of giants, as it were: If your company has a social networks policy or statement of principles or code of conduct, etc., that you like and respect, and that you can share, please do.
If this isn't clear, please do let me know. Also, please note that I'm not looking for a lawyer, we have a good one, but lawyers help you do legally that which you've already decided to do (good ones, anyway :->). Once we have something close to what we think we want, we'll run it past the legal folks, but we're not starting there.
Thanks! <comment><USER2> My employer has no place asking me to do anything on my personal social media. I'd have a huge problem with this.

Personally I try to never cross the line between work and play with my social media accounts.

I also know people who would never update their linkedin or facebook with current employment information because they don't want people know what they are doing. The reasons range from avoiding recruiter spam to avoiding violent ex-boyfriends.</comment>


Show HN: Card Shuffle for Classic Mafia Game - <AUTHOR> https://mafia.brolia.com/ <comment><AUTHOR> Due to self-isolation we switched from weekly playing mafia (werewolf) game offline to online (via zoom). But we needed a card shuffle mechanics, so I wrote this over weekend. Thought maybe this would be useful for somebody else ;)

Note, this assumes classic rules with only 4 roles: villager, mafia, godfather, sheriff, sample rules here - [http://englishmafiaclub.com/how-to- play-mafia-by-classic-rul...](http://englishmafiaclub.com/how-to-play-mafia- by-classic-rules.html)).</comment>


Synth Secrets (1999–2004) - <AUTHOR> http://www.soundonsound.com/sos/allsynthsecrets.htm <comment><USER2> Upvoted, I consider these valuable for somebody that's going to systematically learn synthesis but for someone just looking to make sense of oscillators/ROmplers/wavetables, filters, envelope and what not, i would just do tutorials on whatever you own: microbrute, bass station2, mopho, ES* models in Logic etc (also probably wounldn't spend much time on theory of Yamaha FM, Kawai additive, Casio phase distortion, which had more marketshare at the time of the SoS series)

Or read the books by Brian Shepherd (Refining Sound) or Rick Snoman (Dance music manual). For somebody serious, there's books by Miller Puckette and Charles Dodge

<comment><USER3> Also worth looking out for a book by Allen Strange - Electronic Music: Systems, Techniques and Controls.

There are plenty of good online tutorials too.

This is quite a dated series now, and I always found it slightly self- indulgent even when it was fresh. Some of the theory is still useful, but digital synthesis has moved on. You can do a lot more with digital code-based systems, or even modern VSTs, than you can with vintage synths from the 1970s.

Pretty much everyone uses samples when they need the sound of a real instrument or a classic drum machine, and this series doesn't spend nearly enough time on the art of abstract electronic sound design or (say) using the FFT features in Max/PD/some VSTs.

</comment></comment><comment><USER4> If you're interested in learning the basics of reductive synthesis, I recommend Syntorial ([http://www.syntorial.com/](http://www.syntorial.com/)). It teaches in an interactive way by first playing a tone and then asking you to configure the synthesizer to make that same sound. It covers everything from oscillators, adsr, lfos, reverb/delays, and more.

<comment><USER5> I guess you mean subtractive, not reductive synthesis :)

</comment></comment><comment><USER6> An enormously valuable series on audio synthesis... With not a single audio example you could actually listen to. It's all text and pictures of waveforms.

What a shame this was produced for a paper magazine rather than directly for the web. It would make a huge difference to be able to listen to the progression within an article, rather than having to imagine it from waveform screenshots.

<comment><USER7> To get the most out of the series, you really need to follow along the articles by patching up your own synths. An audio programming environment like Reaktor or Pure Data is ideal for this purpose.

</comment></comment><comment><USER8> I have been reading and re-referring back to these articles for, well, 17 years!

One important point about them is they emphasize creating familiar instruments such as guitar, flute, etc.

That is a bit different - and rarer and more valuabe! - than most synth tutorials that teach ADSRs, VCFs, etc.

Also, to contextualize them a bit, they're from a magazine that mostly reviewed gear for practicing/professional musicians. 90% of musicians don't change the patches on their instruments at all. This is a highly niche, technical series that doesn't cater to all of their readership, but fills in one of its niches solidly and expertly!

</comment><comment><USER9> You may also find this useful - "Practical Synthesis for Electronic Music" \- [http://www.analogindustries.com/b1764/](http://www.analogindustries.com/b1764/)

</comment><comment><USER10> I have been looking for these for some time now. The old site that had these stopped working a long time ago and I never found another source. Thanks for posting!

</comment><comment><USER11> Worth dipping into even if you're not really into synths, because some of the anecdotes (like his quest for the GS1) are pretty funny.</comment>


Can You Drink Too Much Water? - <AUTHOR> http://well.blogs.nytimes.com/2015/06/19/ask-well-can-you-drink-too-much-water/?smid=fb%C2%ADnytimes&smtyp=cur <comment><USER2> My problem with food and water is that at least for me the body signals aren't always clear and easy to interpret. For instance, there are people who say that sometimes feeling hungry doesn't say you should eat something, but that you are actually thirsty. And I personally also experience the feeling of thirst if I haven't cleaned my teeth yet in the morning, while afterwards it's completely okay.

I don't know, though, if people who say "listen to your body" have better ability to distinguish the different signals, or if they just don't know what else to say. For me it sounds like the latter, but this judgement might be unfair.

<comment><USER3> "I personally also experience the feeling of thirst if I haven't cleaned my teeth yet in the morning, while afterwards it's completely okay."

you should still drink water when you wake up, the body is likely a bit dehydrated from the ~ 8 hrs of sleep</comment></comment>


Revolut now allows you to buy and hold BTC, ETH and LTC with no fees - <AUTHOR> https://www.revolut.com/cryptocurrency <comment><USER2> Quote endpoint is currently failing with an HTTP 502 and thus returning 0, so the calculator may be displaying accidental truth in advertising. ;)</comment>


Super easy project planning and estimation - <AUTHOR> http://geon.github.io/estimator/ <comment><AUTHOR> Hi, author here.

I have been working on this as a hobby project for a few weeks now, and it's starting to look decent. It is barely an early alpha yet, so please forgive any catastrophic data loss etc...

It is a tool for breaking down projects into manageable pieces, and to estimate the total time of the project. Pretty useful. I've been dogfooding during the development, and it is a lot better than my usual method of indented lists in a text file.

* Click the button to create a new project.

* Type in your project title.

* Click the "+"-button to add a task.

* Hover over a taks to see the button for adding subtasks.

* Drag&drop task to reorder them or move them up/down the hierarchy.

* Open the edit-dialog on a task to set an estimated time.

* When you enter the first estimate in a task, you get projected estimates for all other tasks.

It is desktop-only at the moment. Some of the stuff works on mobile, but don't count on it. None of the drag&drop works, for example, and it relies on mouse hover.

<comment><USER2> \- The big, red button where normally there's an "accept" button is very dangerous while editing a task. Delete actions should be small-ish not to be done by accident. I suggest changing that button for an "Accept" one, and setting the delete as an extra row or somewhere not so-easy to click.

\- Clickable items are better with a `cursor: hover` on those elements. In that case, you know where you can click in a better way.

\- It's a productivity task, so make some things dead-obvious. For example, the fact that you can drag tasks around should not be discoverable by accident. You might want to add an icon or a small text on the bottom of the screen to make it obvious.

<comment><USER3> The hover to reveal sub-task add button doesn't work well with tablets as you end up opening the task edit first and then you can click on the now visible plus sign.

Otherwise, really cool app!

<comment><AUTHOR> Yes, this is desktop-only so far. Sorry.

I even removed the mobile-friendly responsive design I had for the landing page to not imply it will work on mobile...

But it shouldn't be a big issue to get the drag&drop working. Trello does it great already. I might have to rethink the hover-reveal icons, though.

<comment><USER3> As @Tommi mentioned, hover isn't a great concept in general, as UI elements are hidden and user has to discover them. Though, this is less of an issue in an app the user will be constantly using.

Otherwise, excited to see this unfold!

</comment></comment></comment></comment></comment><comment><USER4> I worked on something similar[1] and was totally hamstrung by front-end engineering.

I can't tell if this a straight up adaptation of PERT 3-point estimates or not. That's essentially what I was trying to develop. It's taught in project management courses but there're no simple tools for it.

I'm wary of projecting from a few tasks to all tasks. The strength of the PERT 3-point method is that it can provide a projected cumulative distribution of outcomes based on expert opinion.

There's a lot of PM and ops research literature about the PERT 3-point technique. My suspicion though is that it actually works less because of the quasi-statistical side of things, and more because of what psychologists called "the unpacking effect".

The unpacking effect is simple: ask someone to estimate a task ("how long will it take to prepare for a flight across the country?"). The estimate will probably be low. If, instead you ask them to enumerate subtasks -- to unpack the task -- subsequent estimates become more accurate.

I use this at work when estimating story points. See a story like "as a user, I can add a phone number to my profile", then speculate aloud what will be required. "We need a database field, to update the model, controller and view, we need some styling and documentation; does this need to be part of the analytics backend too?"

Suddenly the 1 point story is 2 points, or 3.

[1] [http://confidest.com/](http://confidest.com/)

<comment><USER5> >PERT 3-point estimates...It's taught in project management courses but there're no simple tools for it.

Thanks for mentioning some theory behind this. What is lost by doing a simple best/worst/likely time estimate of all sub tasks, as compared to doing the full blown statistical analysis? The simple approach can be achieved relatively easily with a spreadsheet. For small-ish projects, does the full blown approach provide any significant benefit?

I work mostly on small projects, implementing new server/network infrastructure for small/medium businesses. Time estimation is always a crap shoot, and the only approach I know to combat it is to pad the estimate with generic line items like "testing" and "troubleshooting". If the statistical analysis would help create a better estimate of time, I would spend time developing or contributing to an estimating tool.

<comment><USER4> > _What is lost by doing a simple best /worst/likely time estimate of all sub > tasks, as compared to doing the full blown statistical analysis?_

I'm not sure I understand you, but I'm just going to talk at you anyway.

In the 3-point estimate you break the estimate down into smaller parts, then have experts assign best/likely/worst case values to each part. Then they are rolled up into a single CDF.

The thing is that the formulae used are basically made up. They give a "triangular distribution", which superficially resembles a normal distribution at low precision. But lots of things don't resemble a normal distribution. You can hope that through the central limit theorem your estimate will improve towards resembling a normal distribution ... except that humans persistently underestimate everything.

A lot of the Ops Research / PM literature is about fiddling with the formulae, or introducing adjustments based on historical data, which all helps. But by itself the 3-point method improves outcomes simply because you bother to enumerate stuff.

The other secret is that if you do it a few times, you tend to look at previous estimates and you begin to remember things that are frequently forgotten. A common cause of underestimation is leaving off common tasks. For example, software developers can often give a reasonable estimate for the _core_ work they're doing (code and tests), but tend to forget to account for everything else that's needed before a feature can be considered _done_ done: merging, discussion with others, integration, deployments, documentation and so on.

<comment><USER5> Thanks. So the main benefits are from simply enumerating sub tasks, assigning best/likely/worst case values, and repeating the exercise to improve sub task coverage. It sounds like the actual statistical analysis is only an incremental improvement beyond that, and probably does not add significant value to small projects.

<comment><USER4> I don't know if anyone has checked.

</comment></comment></comment></comment></comment><comment><USER6> Two things about this I really like:

* The automagical guessing of missing estimates. Propagating the estimate for a subtask to other subtasks at the same level makes a lot of sense for a first guess, if I'm any good at task breakdown. The propagating _up_ to the "aunt/uncle" tasks (i.e. siblings of the parent) is a bit stranger - seems like it should dramatically underestimate most top-level tasks, and I'd worry about the anchoring effect. Still, it makes it very convenient and quick.

Have you thought about visually distinguishing autoguessed estimates from manually entered ones? At least for leaf tasks, I'd like a reminder of what I have left to estimate. (You could propagate up the "degree of guessedness" to parent nodes, but you probably wouldn't want to, or it would undermine the usefulness of guessing in the first place.)

* The visual tree structure is nice. I like how the horizontal arrangement puts a natural limit on how deeply you can nest, and therefore discourages overplanning :)

<comment><USER7> Yeah I could see this function well if you have some option to set all tasks on the same level. Atm it feels kind of confusing though, and especially the "bubbling". I made this structure, then added an estimation to subtask 2-1-1, and all the other estimations were filled in. I didn't understand at all what was going on at first and thought I had hit a bug.

[http://s12.postimg.org/xth7k6fi5/Screenshot_from_2015_02_01_...](http://s12.postimg.org/xth7k6fi5/Screenshot_from_2015_02_01_18_38_00.png)

<comment><USER8> same thing that confused me too. I estimated one subtask and all other tasks and subtasks of other tasks were estimated. This seems to be a case of preemptive overengineering.

</comment></comment></comment><comment><USER9> Here's some feedback:

You're basically competing with Excel here. One of the strengths of Excel is the excellent support for keyboard. That is, easy entry of new cells and navigating between them by only using keyboard.

Your application's support for keyboard is nonexistent. If I have to enter lines of text and I have to continuously click (+), I will close the browser pretty fast.

<comment><AUTHOR> That important?

I have keyboard navigation planned already, but in low priority. I'll move it up.

<comment><USER9> Yes, that important. But not necessary navigation per se, but fluent keyboard input.

See how, for example, Trello has implemented keyboard input. User can add multiple items to a list without raising hands from keyboard.

</comment></comment></comment><comment><USER10> For some useful theory for estimation and planning of projects, Eli Goldratt wrote amazing content in the book "Critical Chain" which is an easy to read novel.

Should you find yourself developing this tool further, these books will give you an edge that most other tools lack -

[http://www.amazon.com/Critical- Chain/dp/B002LHRM2E/](http://www.amazon.com/Critical-Chain/dp/B002LHRM2E/)

[http://www.amazon.com/Be-Fast-Gone/dp/B004THZ9VK/](http://www.amazon.com/Be- Fast-Gone/dp/B004THZ9VK/)

[http://www.amazon.com/CCPM-3rdEd/dp/1608077349/](http://www.amazon.com/CCPM-3rdEd/dp/1608077349/)

</comment><comment><USER11> The visual hierarchical structure is very helpful, both for breaking a project down and understanding it. However, I was worried for a moment that there was no way to have multiple subtasks at the same level, probably because there is no immediate feedback during the dragging. The lack of feedback requires you to guess what's going to happen when you drop the task.

The icons distinguishing guessed from manual estimates are rather meaningless to me. I suppose the manual icon is supposed to represent a set "target"? The guessed estimate could be something with a question mark in it to represent the guess.

As mentioned already, the "Delete" button is where a "Save" should be, I've found myself automatically moving towards it after editing a task.

The tasks could be slightly smaller, so that more fit on a screen (I can see only 6 in a column at most, though my screen is only 1366x768).

Overall it seems like a great tool and I'd be interested in using it. The front page would certainly benefit from a "email when it's beta/ready" box, as my email would be in there now.

<comment><AUTHOR> > However, I was worried for a moment that there was no way to have multiple > subtasks at the same level

Hmm. Any idea how to make it more clear? (Apart from just stating it... I need a manual, obviously.)

> The lack of feedback requires you to guess what's going to happen when you > drop the task.

Right! I have plans for that, but it's the kind of think that takes a lot of work, with relatively low bang-per-buck. At least so early in development.

> The tasks could be slightly smaller

I experimented a bunch with that, and picked readability over space saving. But yes, as the project grows it gets harder to get an overview. I like the [CMD]+[-]... :)

</comment></comment><comment><USER12> Nice work op, thanks for sharing.

Be nice if you could use the enter / return key when inputing task titles to move to a new task. I think the delete button is strangely placed. This would normally be an accept button. Maybe just have a trashcan icon or something on the task itself.

</comment><comment><USER13> I actually like this a lot and think with more dev time it could be a really competitive product.

</comment><comment><USER14> Big fan of the image on the front page and how easy it is to get going using the thing - great work - looks really slick!

</comment><comment><USER15> Project planning and estimating is a big field.

In a nutshell, the key to making such an effort very effective is just really good knowledge of and experience with all the parts of the project to be done.

Below in (1) -- (5) I give an overview of parts of the field.

(1) Importance of Experience.

Here some examples where a lot of experience is crucial:

A kitchen/bath remodeling firm can give a good estimate of time and cost because they have already done, say, one such job a week for five years, that is, 250 jobs; so, essentially they have already _seen it all_ , that is, all the possibilities of what can go wrong and how much there is to do. Similarly for an auto body shop, a residential HVAC company, a plumber or electrician, a landscaping company, an asphalt paving company, a residential housing general contractor, etc.

(2) Software Projects and Experience.

One means of project planning and estimating for software projects looks at each of the parts of the work and starts with the experience level of the team for that part.

For parts of the work where the team has no experience, that is, is doing such work for the first time, no estimates are made!

So, the project planning works only for projects where there is good experience for all the parts of the work.

Alas, often software projects need to do some things for the first time.

(3) Critical Path.

Some US DoD projects made use of Gantt charts,

[http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd...](http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CDUQFjAA&url=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGantt_chart&ei=VVPOVL2RBsKvggTTmoLQAQ&usg=AFQjCNGPgpcTN31kjmjYV37AeWRWfKguxg&bvm=bv.85076809,d.eXY)

and in particular the concept of a _critical path_. As I recall, this work can make good use of linear programming which can identify the critical path.

Intuitively the _critical path_ is a sequence of tasks such that, if any task in that sequence takes one minute longer, then the whole project will take one minute longer. So, the tasks on the critical path have no _slack_.

So, to speed up the whole project, must at least speed up the projects on the critical path.

Next, then, of course, is the issue of where to put more resources to speed up the projects on the critical path. This, then, is a _resource allocation_ problem, another optimization problem.

(4) Alternatives and Uncertainty.

One of the biggest problems in getting projects done on time and within budget is handling uncertainty, e.g., the effects of unpredictable, outside influences, that it, _exogenous random inputs_.

And, there can be some alternatives in how to execute the projects; then during the project might select different alternatives depending on how the project has gone so far, that is, the then current _state_ of the project.

 _State_ \-- Essentially the situation or status of the project at some particular time, and generally want enough _information_ in the state ( _vector_ or collection of information) such that the past and the future of the project are conditionally independent given the state, that is, want to satisfy the Markov assumption so that in planning the future can use just the current state and f'get about all the rest of the past.

One such _state_ is always the full past _history_ of the project, but commonly much less _information_ is also sufficient to serve as the state.

Commonly we can be drawn into the applied mathematics of stochastic optimal control, say, at least discrete time stochastic dynamic programming, e.g.,

Stuart E. Dreyfus and Averill M. Law, 'The Art and Theory of Dynamic Programming', ISBN 0-12-221860-4, Academic Press.

Dimitri P. Bertsekas and Steven E. Shreve, 'Stochastic Optimal Control: The Discrete Time Case', ISBN 0-12-093260-1, Academic Press.

Wendell H. Fleming and Raymond W. Rishel, 'Deterministic and Stochastic Optimal Control', ISBN 0-387-90155-8, Springer-Verlag, Berlin, 1979.

E. B. Dynkin and A. A. Yushkevich, 'Controlled Markov Processes', ISBN 0-387-90387-9, Springer-Verlag, Berlin.

So, a lot of quite serious applied math research has been done, and a lot is known.

Broadly stochastic dynamic programming makes the best decisions that can be made making use of only information available at the time each decision is to be made.

Nicely enough from the Markov assumption and just a simple application of Fubini's theorem, we can say a little more about being _best possible_.

Interesting here, and a way to get some massive speedups of some software, is the concept of _certainty equivalence_ in the case of LQG, that is, _linear, quadratic, Gaussian_ control as in

[http://en.wikipedia.org/wiki/Linear-quadratic- Gaussian_contr...](http://en.wikipedia.org/wiki/Linear-quadratic- Gaussian_control)

So, the _system_ is linear (as in a linear operator or, for an important special case, matrix multiplication); the exogenous random variables are Gaussian; and the quantity to be _controlled_ , say, minimized, is quadratic (which also includes linear).

(5) Spreadsheets.

Sometimes a spreadsheet is used for project planning, and there is an interesting observation to be made here:

So, suppose we are doing financial planning for five years and develop a spreadsheet with one column for each month, that is, 60 columns, maybe 61, and one row for each _variable_.

So, some of the spreadsheet cells represent exogenous random variables, and some cells represent decisions to be made.

(A) We can fix the decisions and _recalculate_ the spreadsheet, say, 500 times and, thus, do Monte Carlo simulation for the random cells and get an empirical distribution and expected value of the money made at the end of the project.

(B) We can fix the values of the exogenous random variables and then use some optimization to find the values of the decisions that maximize the money made at the end of the project. Spreadsheet software has long, often had some optimization, from linear programming or L. Lasdon's generalized reduced gradient software, version 2 -- GRG2.

This approach, in terms of football, say, the Superbowl later today, would be like the quarterback on first and ten calling the next four plays without considering the extra information he will have after each of the plays. Quarterbacks wouldn't do that, and business planners should not either.

(C) But what about making the best decisions with the random exogenous random variables not fixed? Then usually we want to maximize the expected value of the money made at the end, but the form of the decisions is special: At each period, the decisions are in terms of the _state_ of the project as of the end of the last period.

So, such optimization is called discrete time stochastic dynamic programming, Markov decision theory, etc.

So, nicely enough, computer spreadsheet software has enabled some millions of planners to specify in very precise terms some nearly complete formulations of problems to be solved with stochastic dynamic programming.

For a reasonably large spreadsheet, such optimization would be a super computer application -- nicely, there really is a lot of parallelism that can be exploited.

At one time I pursued just this direction at the IBM Watson lab in Yorktown Heights. Had the semi-far sighted management let me continue, by now there should be a good business for cloud sites to do such problems, say, use a few thousand cores. Ah, IBM has missed out on several much larger opportunities!

There are various approaches to making the computations faster, say, using multivariate splines to approximate some of the functions (tables) to be generated, the R. Rockafellar idea of _scenario aggregation_ , and more.

My guess is that the OP has in mind something simpler.

As I recall, there is some project planning software. Right, a simple Google search shows, e.g., Microsoft's Project 2013.

<comment><AUTHOR> > My guess is that the OP has in mind something simpler.

Yes.

Not to dismiss the actual research that has been done, but... Estimates are mostly bullshit anyway.

This tool helps you to bullshit more accurately than nothing, while still being "super simple" to use.

The projection algorithm I use is _extremely_ basic so far. There is a ton of improvements I have in mind already, and I haven't even bothered to more than skim read the research papers I found yet.

I did have plans for some simple Monte Carlo sampling to get a nice probability distribution graph, though.

<comment><USER15> > Not to dismiss the actual research that has been done, but... Estimates are > mostly bullshit anyway.

Right, but in some cases you can know fairly well or quite well. E.g., say you are planning and one of the exogenous random variables is the number of people, or customers, who arrive during the plan. Then with just a few assumptions, that mostly can be checked just intuitively, that number of people will have Poisson distribution and all that have to estimate is the arrival rate parameter. One of the random variables might have to do with weather, but there is a lot of data on the probability distribution of what the weather can do.

But generally, yes, that applied math is a lot of theorems and proofs about what the heck to do if you had a lot more data than you do have. Or, in the South Pacific, it is an airline service from island A to island B, terrific if you are at A and want to get to B but no good if there's no chance of getting to island A.

As I recall, long in some major US DoD projects, keeping track of the critical paths and adding resources to those was regarded as doing a lot of good.

A related part of _project planning_ is the subject, often pursued in B-schools, of _materials requirements planning_ \-- in practice there can be a lot to that. And closely related there is _supply chain optimization_ , that is, when the heck will the critical parts arrive for our poor project?

Also related is _constraint logic programming_ or how the heck to load all those 18 wheel trucks, each with 40,000 pounds of boxes of fresh pork, from our only three loading docks where each truck gets what its scheduled deliveries need and the boxes are ready from the kill and cut operation when the truck is parked at the loading dock? Real problem. Such problems are commonly looking for just a _feasible_ solution, that is, not necessarily an optimal solution, to some constraints that might have been for an optimization problem. Well, then, in such optimization, just finding a first feasible solution is in principle as hard as finding an optimal solution given a feasible solution, so that constraint logic programming gets into optimization. At one time, SAP, C-PLEX, etc. got heavily involved.

Another planning problem is dial-a-ride bus scheduling -- one of my Ph.D. dissertation advisors tried to get me to pursue that problem as a dissertation, but I avoided it like the Big Muddy Swamp full of huge alligators and poisonous snakes and picked another problem, right, in stochastic optimal control, a problem I could actually get some clean results in.

Did I mention, _project planning_ is a big field?

Your software looks like it has a user interface a lot of people will like a lot, but with enough usage some users will still encounter some of the challenging aspects of project planning.

Good luck with your software.

</comment></comment></comment><comment><USER16> Seems like a really nice tool. A few things:

\- When I mark a task as "Done", I would assume its sub-tasks to be marked as done too.

\- When I mark a task as "Done", it would be nice if it somehow went out of my way. Like if all of the subtasks collapsed into the parent or something.

<comment><AUTHOR> > \- When I mark a task as "Done", I would assume its sub-tasks to be marked > as done too.

Right. Didn't think about that. Thanks! I _did_ plan to mark the parent as done when all children are done.

> collapsed into the parent or something

Exactly what I have in mind.

</comment></comment><comment><USER17> If it's not mobile ready you should warn on site. I just took time to try and get through it and came back here to discover your comment too late.

Likewise your quick instructions should not be here in your intro, put them somewhere in the flow once someone lands on your site.

<comment><AUTHOR> The title was changed after I posted. This kind of feedback was exactly what I was after.

> quick instructions should not be here in your intro

Yes. I'm not yet sure how much of it is self explanatory, but I'm getting an idea of it.

</comment></comment><comment><USER18> div.columns could use a overflow-y:hidden , scrollbar is showing in FF35

Also not exactly sure how to use the tool... I created a project and added some tasks but not quite sure what to do next/ how to use it

</comment><comment><USER19> Nice !! just curious as a developer, what is the tech stack?

<comment><USER20> Use browser inspection tools or firebug?

jQuery, underscore, backbone.....

<comment><AUTHOR> ...and Less for styling, and statically compiled Jade as just a better HTML.

Plus a minimalistic REST api in Node, with Postgres.

Actually, all source in on Github.</comment></comment></comment>


Sawppy the Rover - <AUTHOR> https://github.com/Roger-random/Sawppy_Rover <comment><AUTHOR> This rover has been inspired by NASA's Open Source rover: [https://opensourcerover.jpl.nasa.gov/](https://opensourcerover.jpl.nasa.gov/).

A shameless plug: If you like this kind of content then you will probably enjoy my Weekly Robotics newsletter, where this link appeared last week: [http://weeklyrobotics.com/weekly- robotics-12](http://weeklyrobotics.com/weekly-robotics-12)

</comment><comment><USER2> That video at the bottom of the page made me understand that weird 6 wheels design. Cool :-D

<comment><USER3> and showed a maneuver you woudn't see nasa doing on mars :)

</comment></comment><comment> pi-rat Always wanted to build one of these :) I assume the servo motors make it quite noisy?

<comment><AUTHOR> Me too! I think this will be the one for me. There is a video[1] referenced in the repo and it indeed appears to be quite noisy!

[1] - [https://www.youtube.com/watch?v=acANiRFg- qA](https://www.youtube.com/watch?v=acANiRFg-qA)</comment></comment>


Laniakea: Our home supercluster - <AUTHOR> https://www.youtube.com/watch?v=rENyyRwxpHo

<comment><USER2> For a moment I thought it was another DIY 'super computer'.

Then I remembered the name from another article yesterday, it's our local galaxy super cluster.</comment>


The language the French forbade - <AUTHOR> http://www.bbc.com/travel/story/20180911-occitan-the-language-the-french-forbade <comment><USER2> Alas, occitan is a dead language. Of course, a few old people still use their local dialect, but how many parents mainly speak in occitan to their children? How many people learn it out of school? Who grows speaking occitan with friends and enriching it with new expressions, like any living language? Occitan may have 3 millions of speakers in France, the Latin language still has more.

The occitan language that is learned in school is mostly a toy language. When Littré wrote his famous dictionary, from 1850 to 1875, he mentioned multiple dialects of the "langue d'Oc" which were still active in the South of France. Gascon, limousin, languedocien, catalan and provençal were distinct dialects. But there are no teachers fluent in any of these dialect, so during the 20th century they forged the "occitan" language which is a mix of these, but mostly built from provençal.

Overall, this article is very superficial. It wrote about troubadours, but forgot to mention a reference well-known in the UK: Richard Lionheart spoke in French and Provençal, and was probably not fluent in English. Living in France, in Aquitaine, he composed poetry in "langue d'Oc".

It's well known in France that the French Republic though that the local cultures were an obstacle to the unity of the nation. So they forbid every local language. There were panels in some schools with the text: "It is forbidden to spit and to speak Breton".

<comment><USER3> In South Wales of the UK, we were forbidden from speaking Welsh (I should note that the southern dialect is different from the northern, and vice-versa). Any child that spoke Welsh in school would have a thick and heavy board attached to their neck, to wear in shame (The "Welsh Knot"[1]). It was forbidden across the board, and gradually died out.

So, we slowly forgot our own language (the other parts of the country that were not dominated by the English to such a degree, actually look down on us a little bit, because we do not speak Welsh as our main dialect...).

Recently due to pushes from the government, more and more children are growing up and learning welsh, and it's now at the point that most jobs in wales are successfully requiring Welsh-speakers as part of their hiring.

It's completely possible to resurrect a dead language with native language speakers still in existence, it's faster than killing the language (It took 300 years to completely eradicate Welsh and only about 50 years of government efforts to resurrect it), it just requires the collective will to be there, and the wish to restore the culture (or some bastardized idealized version of it).

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

<comment><USER4> Nice post, I would add a couple of points re. Welsh. The first is that it was not really dead 50 years ago. It got as low as 15% of the population in the 50s/60s, and was undoubtedly headed for obscurity and 'death', until the revival, as you mentioned. But it was still alive (q.v. Dafydd Iwan's [0] most famous song, "Yma o Hyd"). Now welsh is spoken by around 18% of adults and 25% of children, and is increasingly seen as an important part of modern Wales.

The other important thing to realize is that Welsh was 'formalized' in 1620 when the Bible was translated into it[1]. This had the double effect of unifying the distinct regional dialects into 'high Welsh' (a distinction which exists to this day!) but also, crucially, providing a standard text which people could use to learn to read and write. It meant that Welsh was able to flourish into a full legal language, and not just used as a 'home' language.

This gave it a backbone which was not present in other 'regional' languages (such as its nearest relation, Cornish), which in turn have all but died out.

With respect to the original post, I note that the Bible was only translated into Occitan in the modern era [2], which would support the evidence of it still being a language only used at home, and not in formal situations.

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

[1] [https://cy.m.wikipedia.org/wiki/Beibl](https://cy.m.wikipedia.org/wiki/Beibl)

[2] [https://en.m.wikipedia.org/wiki/Bible_translations_into_the_...](https://en.m.wikipedia.org/wiki/Bible_translations_into_the_languages_of_France#Occitan_and_Provençal)

</comment></comment></comment><comment><USER5> Well, I still speak it somewhat...

The _truth_ is that the transition of Occitan speakers to French is by and large a process consented by the population (often encouraged by working men, like my grand-father who associated the "patois" with extremely backwards conditions) because it simply provided more economic and social opportunities at a time people started moving massively towards cities. In fact the South- West provided a lot of teachers during the 19th c. and was a Republican stronghold. Public institutions, which are not restricted to school (the first major catalyst being the army with the age of conscription), helped to put French in an insurmountable position of prestige, but it was more practical and less cynical than often portrayed.

It's more comfortable to blame an abstract entity like the government than your ancestors.

<comment><USER6> That may be true for some languages such as Occitan or Picard but others were purposefully killed by the republic. Alsatian for instance was forbidden in schools. If prestige only was at play Alsatians may have mostly became bilinguals (similar situation exists in Africa, Hong-Kong, India) instead of unilingual speakers of French.

<comment><USER2> In order to unify the country, the French Republic fought against every language. Alsatian was forbidden in schools, but it was the same for anything outside French.

Of course, if Alsatian had been allowed or supported, more people would speak it as bilinguals, but would it be enough to save it? Thousands of languages are dying, especially those that are spoken in a small geographic area where another language seems economically more useful.

As an example, Romanche is an official language of Switzerland, yet it is disappearing at an alarming rate. Even the Basque language, which is rare in France because of a century of concealment, is not flourishing in Spain. Basque is a official regional language in Spain, and the population that can speak it grows slowly, but now the majority of those who live in the Basque region don't understand its traditional langage. When only 20-30% of the population can speak correctly a language, how long can it survive?

<comment><USER4> > When only 20-30% of the population can speak correctly a language, how long > can it survive?

When it has the same legal rights as the dominant language, government funds to help run media and entertainment, and a strong culture determined to nurture it, I would argue that it can survive indefinitely. All of which are the case for Basque, which is in fairly rude health at the moment.

</comment></comment></comment></comment><comment><USER7> It certainly is not "the French". It's the "French Republic". Local dialects lived happily in France for over a Millennia under the Monarchy. The French dialect, mostly spoken in the Jacobin circles in Paris, was imposed by the revolutionaries as a mean to achieve "equality".

<comment><USER8> This is not true. The standardization of the french language started with Francois I, centuries before the revolution.

<comment><USER9> I'd like to know more. In New France, the majority was from northwestern France (Normands, Poitevins, etc.) but somehow they managed to settle on a language that is surprisingly similar to Parisian French despite the accent and informal terms whose northwestern roots are clear (according to the linguists that I've read). So did the colonists of New France build on the efforts of François 1er?

<comment><USER10> The language divide was mostly north/south with also a few other languages at the margins (Breton, Basque, Alsacien).

Normands spoke French long before some emigrated to North America. Just ask the English.

<comment><USER9> True, but I think of the French author who visited Québec in the 19th century long after the conquest and noted that the purity of the language was better than in much of France at the time. Or something like that, I can't find the reference right now. Was the author talking of the division north-south or of a greater diversity than you suggest? Hard to tell.

</comment></comment></comment></comment></comment><comment><USER11> My grand father only spoke Occitan until he was 7 years old and went to school. My father can still speak the language fluently, although he lacks practice.

That said, 1/ Occitan is a lot like Spanish (unlike, say, Breton or Basque which are very far from Latin (or French)) and 2/ most people were bilingual speakers of French + regional language at least as early as the middle of the 19th century. It is true that France fought aggressively to suppress local languages, but almost everyone understood French anyway.

<comment><USER12> Occitan is closer to Catalan than to Spanish.

<comment><USER13> Both are a lot like Spanish (unlike Breton or Basque).

<comment><USER14> Breton and Basque are not Romance languages.

Occitan and Catalan are more similar to each other than Catalan to Castillian or Occitan to French.

<comment><USER13> I think we all agree about that.

Edit: bambax said "Occitan is a lot like Spanish (unlike, say, Breton or Basque [...])". He could have said "is a lot like Catalan", or "is a lot like French", or "is a lot like Gascon". All are true to different degrees.

</comment></comment></comment></comment></comment><comment><USER8> This article makes it sound like occitan is mostly used in rural communities to talk about local cuisine and folk tradition.

There are also people speaking various dialects of occitan in Toulouse, Bordeaux, Perpignan, Marseille and Nice, mixing it with french and with languages brought by immigrant communities.

There are rap songs in occitan, or mixing french occitan and arabic:

[https://www.youtube.com/watch?v=H1kK7iL9brY&list=PL2ztot6xjo...](https://www.youtube.com/watch?v=H1kK7iL9brY&list=PL2ztot6xjo- hRANqkw8knt8ahi59CKLdE&index=22)

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

<comment><USER15> I grew up near Perpignan, and never knew some people around there would speak Occitan. A _lot_ speak catalan, though.

<comment><USER4> That's because it's possible to argue that Occitan, Catalan, Aranese etc are all 'dialects' of the same language.

I speak Catalan, and I can understand most written Occitan, for example.

"A language is a dialect with an army and navy" (said somebody, once!]

</comment></comment></comment><comment><USER10> There _used_ to be many dialects spoken in France, like in most European countries.

They really disappeared in earnest at the end of the 19th century when school was made compulsory, and exclusively in French, with children being punished for speaking any other language.

<comment><USER16> It's the story of many local languages / dialects in many other countries too.

</comment></comment><comment><USER17> Notice that a French Nobel laureate in literature (Frederic Mistral) wrote his whole work in occitan.

</comment><comment><USER18> I wish this blog had an RSS feed...

</comment><comment><USER19> Isn't reading such an article in English abit ironic?

<comment><USER9> Are you referring to the bulldozer effect of English against other major languages?

If so, I'd say that English and Occitan (for example) are not in the same league, therefore not competitors. For example, no school pupil will choose to do part of his schooling in Occitan unless he lives in that region and even then it doesn't really replace a 'real' foreign language -- you need to learn one of those anyway. (Right?) But in Europe, when one decides between English and another major European language, the easiest answer is not always the best answer. And the easy answer demonstrates the bulldozer effect of English.

(I'm not a fan of English BTW. I use it when it's useful to me, like any other. Others have proven themselves far more useful to me at times. Just not when I read Hacker News!)

<comment><USER20> A couple of European countries offer the option to learn two foreign languages during school.

So usually the most sought combinations are English and French, German or Spanish, which already covers our internal travel needs quite well.

Then a couple of Erasmus and the language knowledge can be ramped up to a few other European languages.

<comment><USER9> Not just a couple, but many European countries offer two or more foreign languages. (The level of success varies wildly of course.)

The configuration is even more complicated in French schools where there is the optional immersion in the regional language. That immersion generally begins at the earliest ages. But my point was that this regional language in no way limits the choice of the first foreign language later on. Therefore: I don't believe that Occitan is in any way menaced by English, but English may be chosen over other European languages later in one's scolarity.

As an aside, I don't quite agree with your statement that the foreign languages offered cover your travel needs. Well, that may be true, but I don't think that the most important element is mobility for travel, but rather mobility for employment and trade, _especially_ in border regions. And I can name a LOT of countries where proficiency in the neighbour's language is severely lacking. Neighbours that are sometimes just a kilometre away. I've seen it myself.

<comment><USER20> Well it depends how open people are to learn other languages.

More than once I had to speak English in the Flemish area in Belgium, because the person I was speaking to never bothered to keep their French up to date.

Likewise I happen to speak better French and German than some Swiss German and Romande friends of mine. It is ironic to watch them speak in English among themselves, which isn't an official national language.

So mindset matters as well.

<comment><USER9> We agree: it depends on the willingness of people to learn. I'm just saying to myself that it's pretty stupid not to want to learn the language of one's immediate neighbours, especially when it can eliminate spells of unemployment or double or triple one's salary.

I had heard of the Belgian example and am all too aware of Romands and Allemanics speaking English with each other because most don't care to learn another official language enough to do business in it. A couple of other examples that I've seen...

\- Basel, CH: the German speaking Baslers are litterally glued to a now essentially francophone French city. Every one that I've met speaks better English than French. Of course it's clear that they have little economic motivation to do so.

\- Wrocław, PL: many of the graduates of that city's fine universities may end up working in Germany (which is about 100 km away) but almost none of them come out of high school or university speaking fluent German. The system even discourages it, maybe because Wrocław (Breslau) was previously in Germany.</comment></comment></comment></comment></comment></comment>


Programming and Report Designer - Maximum Age: 40 - <AUTHOR> http://www.irantalent.com/home/Programming-and-Report-Designer-jobs-in-Tehran-Iran-6384.html

<comment><USER3> Expert Crystal Reports experience and under 40? That's a hell of a Venn diagram.

</comment><comment><USER4> When I lived in the middle east, this was common. Another, less palatable phrase was 'must be western educated'. Which seemed to be shorthand for 'no Indians or Pakistanis please'.

<comment><USER5> I recall other parts of the Mid-East have something like a three or four tiered system. Arab ruling class on top, Westerners below that, Indians and third-world migrants below that and Palestinians and indigenous Arabs maybe below that.

Iran seems like it would be different since I couldn't imagine they have many Westerners at this point.

The whole thing sounds miserable. I know Saudi Arabia or Dubai have enough money to pick and choose who they want but, again, Iran? Anyone know the story?

</comment></comment><comment><USER6> Here is another one - ideal age: 20 - <USER2> [http://www.irantalent.com/home/Linux-Security-Expert-jobs- in...](http://www.irantalent.com/home/Linux-Security-Expert-jobs-in-Tehran- Iran-6168.html)

This one here - 30-38 - strange... really strange :) [http://www.irantalent.com/home/C-Programmer-jobs-in- Tehran-I...](http://www.irantalent.com/home/C-Programmer-jobs-in-Tehran- Iran-6235.html)

<comment><USER7> "Working Hours: Sat - Wed 8:30 - 17:00, Thu 8:30 - 12:00" - I had to count twice to confirm that they're scheduled 6 days a week. Is that common outside the EU and North America?

<comment><USER8> Yes, in Islamic countries: [http://en.wikipedia.org/wiki/Workweek_and_weekend#Thursday.E...](http://en.wikipedia.org/wiki/Workweek_and_weekend#Thursday.E2.80.93Friday_weekend)

</comment></comment></comment><comment><USER9> Do you really want to be doing this when you're 50?

<comment><AUTHOR> be nice to have the option.

</comment></comment><comment><USER10> I find it interesting that the job is posted in English. Do they conduct IT business in English or are they specifically trying to recruit out of state talent?

<comment><USER11> Which programming language do you use that isn't based on English?

<comment><USER10> Reading through the FAQ, you must be fluent in Farsi and have a "reasonable" command of English.

All the job postings are in English, presumably targeting a Farsi audience, creating a filter for those who do not have a good command of English. (Whether this is effective or not can be debated due online translators)

</comment></comment></comment><comment><USER12> Umm... if you are over 40 in Iran than you are either the Shah or a foreign diplomat [https://www.cia.gov/library/publications/the-world- factbook/...](https://www.cia.gov/library/publications/the-world- factbook/fields/2177.html#ir)

<comment><USER13> Median age doesn't say much about the number of people over 40. Life expectancy in iran is around 70 [1].

Also, the last shah was overthrown in 1979.

[1] <http://www.indexmundi.com/iran/life_expectancy_at_birth.html>

</comment></comment><comment><USER14> Dang. Soon 40.

I guess I won't be able to take an entry-level programming job in Iran. No point in bucket-listing that anymore...

</comment><comment><USER15> I'm shocked, shocked, to learn that this level of discrimination exists in Iran.

<comment><USER16> And stunned. Yeah, stunned.

</comment></comment><comment><USER17> What is their perceived benefit of hiring young? They can pay less?

<comment><USER18> Probably. Also, this is Iran. There are pretty heavy social and political differences in the under-40 demographic that the employer may desire. For example: perhaps they have female coworkers or managers out-of-country, which is far less likely to be a problem with that age group.

</comment></comment><comment><USER19> For those that didn't catch it, this is in Iran, not in the United States. They may have different customs there with regard to age. I am completely ignornat on these details.

</comment><comment><USER20> They do this in Japan too.

</comment><comment><AUTHOR> ouch - first time I've seen max age on a job listing...

<comment><USER21> It's not legal in the US, but looks like this is a job posting in Iran.

</comment></comment><comment><USER22> How disappointing for us old guys!!

<comment><USER23> Personally, not that put out that some crap* body shop in Iran doesn't want to hire me. Really, I'll manage.

* feel justified in guessing they are crap based on job description and age restriction.</comment></comment>


HTC gets help from troll in patent fight with Apple - <AUTHOR> http://www.law.com/jsp/article.jsp?id=1202458114083&HTC_Sues_Apple_With_Help_From_Troll

<comment><USER2> The title of the article at law.com "HTC Sues Apple, With Help From Troll" is loaded! There is in no way any friendship or even co-operation between HTC and said patent troll, as implied by the wording of the title. This reeks of the Apple-fanboi PR guerrilla!

</comment><comment><USER3> :) I guess this is just HTC getting back at Apple for the latter's patent suit ...

Sadly, recent evidence shows patents being increasingly used to stem (honest) competition than protecting IP</comment>


(fab) - A pure javascript DSL for building async web apps - <AUTHOR> http://www.fabjs.org/

<comment><AUTHOR> Hey all,

I just launched a dead-simple web framework on top of node.js. It uses (abuses?) a lot of the dynamic nature of javascript to create a jQuery- inspired DSL that's pure javascript, allowing you to create really concise web apps like this:

      ( fab )
        ( "/time", function(){ return "the time is " + (new Date).toTimeString() } )
        ( "/date", function(){ return "the date is " + (new Date).toDateString() } )
      ( fab )

I'd love to hear any feedback from the folks here, so check it out and let me know what you think.

<comment><USER2> I did a double-take looking at that syntax. I assume that fab (and all of the other bracketed expressions) return functions that chain together? Pretty ingenious. Plus you can detect the end of the chain when one of the methods is passed in "fab" again.

I think I can say that this is the best (ab)use of the syntax I've ever seen, well done. :)

<comment><AUTHOR> Yeah, a (fab) function just returns itself. It's like jQuery's chaining, but using argument signatures instead of object methods to delegate work. The last (fab) is just a way to indicate the chain is over so that a listener can be returned, and has the additional benefit of making it look declarative.

</comment></comment></comment><comment><USER3> What's the ratio of node.js web frameworks to sites that actually use them?

<comment><USER4> 100:0 From what I can tell, but that being said, they're all coalescing into something interesting.

<comment><USER3> Exactly what I'm thinking also. There are a plethora of frameworks, but they all bring something cool to the table. I'm still wondering how viable it is for web development, however (just because of how it hasn't really caught on yet while having many chances to.)

<comment><USER5> I think it hasn't caught on yet because there's no (last time I was around anyway) solid, decent, recommended deployment strategies.

It was once suggested to me on IRC to use only _one_ instance of a node app because it's "non-blocking"... I'm serious: "why would you need more than one?".

Obviously you can deploy well enough using a monitoring app to keep up as many workers as you want, but compared to stuff like passenger it's just not mature enough.

</comment></comment></comment></comment><comment><USER6> Unfortunate name: The Fabric Python deployment tool uses the _fab_ binary and uses _fab_ files for configuring deployments: <http://docs.fabfile.org/>

<comment><USER7> Why should a javascript library defer to the abbreviated name of a minor python-land command line tool?

<comment><USER8> It's actually not that minor...

</comment></comment></comment><comment><USER9> Stuff like (fab) and CoffeeScript* show how easy it is to build on top of the V8 and node.js platform. And these toy languages/frameworks also have great perfomance given the non-blocking nature of node.js and the optimizations of V8. Amazing and happy to see more of these projects :)

* <http://jashkenas.github.com/coffee-script/>

<comment><USER10> CoffeeScript is a language. It doesn't run natively on node.js, so I don't really see the relationship here.

<comment><AUTHOR> Indeed, CoffeeScript was built on Ruby, and its REPL on Narwhal.</comment></comment></comment>


Other people's data - <AUTHOR> http://blog.tidy.io/2012/10/08/other-peoples-data.html

<comment><USER2> I don't use services like this (I can't really use cloud backup systems of any sort) and so I'm not meaning to pick on tidy.io when I say this, just to help them do this page better:

* It's all well and good to serve the login page from HTTPS, but if you want to lock your site down to HTTPS, set HTTP Strict Transport Security to lock the site to HTTPS in the browser.

* It doesn't look like you set the Secure flag on your cookies, meaning that anyone who can spoof <http://TIDY.IO> can capture session cookies.

* If you're serious about protecting my data, how much can you really tell me about the security of KISSMetrics, of GetClicky, or of the Google Font API server? You delegated to each of those third parties control over your DOM and thus of my data.

Taking the assertions of the page a little further:

* I'm glad you see the light on not inventing your own crypto library... but if you're encrypting data, what library did you use? Did you use a library that can't easily be misused, or did you use something like OpenSSL?

* Can your administrators theoretically decrypt data on the server? Tarsnap's administrator can't --- but then Tarsnap isn't a web application.

* How is your site administered? Can admins SSH into production boxes over the public Internet? Do you have passwords anywhere? Have you deployed 2-factor authentication? Do you have an HTTP/HTTPS admin console application somewhere? How is it accessed?

* How is email handled at TINY.IO? Does all your TINY.IO-related business go through TINY.IO mail, at someplace like Google Apps? Or do you have admin accounts for your personal email addresses? Are your email addresses password protected or 2-factored protected?

* Where would I go to report a vulnerability in TINY.IO? Has anyone ever done that? Is there some list of people you've thanked for doing so?

I wish I could say these things were just pedantic, but they've all mattered, often quite a lot, in past incidents.

The elephant in the room question on all services like this is simple and hard to answer effectively: assume that there is a critical vulnerability in your application (very very very talented developers have managed to ship remote code execution before) --- what mechanisms are in place to ensure that the worst-case vulnerability doesn't provide an attacker with access to my Dropbox data? The answer can't be "CircleCI".

<comment><USER3> Thanks for these points. I've set the HTTP Strict Transport Security header and session cookies are now HTTPS only, these are definitely good very good ideas. While I do think that those services can probably be trusted it's always good to reduce any dependencies on 3rd parties so I'll definitely consider moving the stat logging server side.

To answer your other questions:

* I used PyCrypto which certainly isn't as fool proof as I'd like but seems to be the best option available to me.

* Admins can decrypt the data by the nature of how the service works, Tarsnap requires you download and run an application yourself so is for very different types of users

* We use SSH certs and no admin is accessible to web users

* We do use Google Apps for email, and we do have two-factor set up

* tidy.io hasn't been up long enough to get vulnerability reports but if we do we will handle them responsibly and definitely give the finder thanks and credit. We do need a proper statement of this on the site though, I'll sort that out!

<comment><USER2> It is very easy to write bad crypto with PyCrypto (it is an interface on pretty much the same level as OpenSSL). As a Python developer, you have access to Keyczar, which is what you should use instead of PyCrypto. The number of questions you'd have to address about your PyCrypto cryptosystem to make that point an asset instead of a liability (to savvy readers) is too large for the page you're trying to write.

You've exposed SSH to the Internet? Your SSH endpoints have routable IP addresses? How many of them do you have? If you've deployed this on EC2, you'd be better off moving all your admin to a VPN connection, so that any server you'd SSH into has a 10-net address.

</comment></comment></comment><comment><USER4> Having worked with Thomas before, I know he has extraordinary attention to detail when it comes to code quality and security. I'd certainly trust my data in tidy.io.

One feature I wish services like this had is an incredibly simple way to backup a large folder to Glacier/S3 and then retrieve it just as easily. I use Dropbox for things that change on a frequent basis, and I want to use Glacier to archive everything else. Would be happy if anyone knew of such a service, but for now, I'll be using tidy.io.

</comment><comment><USER5> These are good points. However, as a user of Dropbox I just don't care if they encrypt my data or not. If I back up anything sensitive, I encrypt it myself. For stuff that's not that private (e.g. pictures that I've shared) I assume that anyone at Dropbox could look at them.

<comment><USER6> It's more than just your data. The other service similar to tidy.io that recently launched managed to leak people's private AWS keys.

</comment></comment><comment><USER7> Irony: Proclaiming 'HTTPS everywhere' when the webpage it's on doesn't use HTTPS.

<comment><USER5> "It goes without saying that all pages shown to logged-in users should be served over HTTPS"

You're not logged on to that page, it's a blog. There's nothing to gain by serving it over https.

<comment><USER8> "nothing to gain" has interesting intersections with domain-wide cookies when mistakes are made.

</comment></comment></comment><comment><USER9> Good to read a blog post like this after seeing IceBoxPro's attempt at security.</comment>


Show HN: LifeReel - rediscover your best memories (at Facebook Hackathon Finals) - <AUTHOR> http://getlifereel.com/

<comment><USER2> This reminds me of the carousel scene from Mad Men.

</comment><comment><AUTHOR> Definitely brought back some great nostalgia :)</comment>