German government agrees to ban fracking indefinitely - <AUTHOR> http://www.reuters.com/article/us-germany-fracking-idUSKCN0Z71YY <comment><USER2> For context, in 2013 Germany was producing around 50,000 barrels per day. [1] Germany is a huge net importer and a very minor producer.

The US state of Wyoming produces more than 200,000 barrels per day. [2]

The US as a whole produces more than 7,400,000 barrels per day. [3]

[1] [http://www.indexmundi.com/energy.aspx?country=de&product=oil...](http://www.indexmundi.com/energy.aspx?country=de&product=oil&graph=production) [2] [https://www.eia.gov/dnav/pet/hist/LeafHandler.ashx?n=PET&s=M...](https://www.eia.gov/dnav/pet/hist/LeafHandler.ashx?n=PET&s=MCRFPWY2&f=M) [3] [http://www.indexmundi.com/energy.aspx?country=us&product=oil...](http://www.indexmundi.com/energy.aspx?country=us&product=oil&graph=production)

<comment><AUTHOR> If they are a huge importer that means this move is even more dramatic because it says they won't do stupid things just to try to save a few dollars.

But also, aren't they huge on solar even though they get a fraction of the sun that the USA does?

<comment><USER3> > But also, aren't they huge on solar even though they get a fraction of the > sun that the USA does?

They've put a ton of money into solar and wind, but these are extremely variable and there are days of the year that solar and wind produce practically 0% of Germany's energy, and usage keeps growing.

<comment><USER4> _these are extremely variable and there are days of the year that solar and wind produce practically 0% of Germany 's energy_

Note that it tends to be more windy when it's less sunny, so the monthly variability of solar and wind energy production combined yields a factor of less than two. You're right than on a daily basis, there likely will be issues, but I don't know the statistics off-hand (besides the news stories that electricity tariffs can go negative on sunny days).

<comment><USER3> This was 2014, so it may be different in 2015, but is a reasonable benchmark:

[https://www.ise.fraunhofer.de/en/downloads-englisch/pdf- file...](https://www.ise.fraunhofer.de/en/downloads-englisch/pdf-files- englisch/data-nivc-/electricity-production-from-solar-and-wind-in- germany-2014.pdf)

You can see that during 2014 the minimal combined solar and wind production for a day was just 0.022 TWh (just 4% of maximum combined wind and solar). While generally it was around 0.2TWh, the risk of dropping to almost no production means that Germany still can't really rely on wind and solar and still has to significantly rely on coal and gas (especially gas, since it is most flexible).

</comment></comment></comment></comment></comment><comment><USER5> So much misinformation around fracking; incredubly sad the people that want it banned dont understand impermeable layers, sand injection, and salt water disposal.

You will always need crude oil, not for burning, but for the synthetics, plastics, and materials of the future in our electric cars. Fracking in the USA has allowed us to use our own ethically sourced resources, rather than fueling wars in the middle east.

<comment><USER6> I don't understand how people can be so confident in the computer models that show that it is safe to inject millions upon millions of gallons of toxic waste water deep underground. They say that it's safe over a timeline of hundreds of years, but we don't even have computer models that can predict the weather above ground for next week.

<comment><USER7> I don't understand how people can be so confident in the computer models that show that the Earth will become warmer and warmer. They even say that it's caused by human activity and it can be stopped if we avoid burning fuels, but we don't even have computer models that can predict the weather above ground for next week. So how can they predict exact temperature for next few hundreds years?

<comment><USER8> I get your point but you are wrong. Climate change is based on a lot of historical data and measurements and theoretical models from various sources.

Fracking depends on the geology and certain assumptions about what's going on while fracking and that everything is going according to a plan. Might be harmless in certain regions might be a problem in others. There is little data on fracking as it's recent technology - results on earthquakes are just in and don't look particular harmless.

</comment></comment></comment></comment><comment> rm_-rf_slash This is rather surprising, and also not. On one hand, it makes sense that a European (see: Rich and believes in climate change) country wouldn't want to frack under their own soil (I'm not against fracking but I am also happy it is banned here in New York) but fracking can certainly be done safely effectively if the right regulations are in place and enforced.

The only reason we see so many bad cases of fracking effects like earthquakes and so on is because the states that allow fracking also don't bother to regulate it. So it's just a matter of extra cost and engineering, which can decrease that relative cost over time.

Besides, if anyone can engineer themselves out of a problem, it's the Germans.

<comment><USER9> It's not at all surprising. Germany has for decades now been very environmentally conscious. This is why Germany is doing the Energiewende and have had plans to shut down nuclear reactors since long before Fukushima.

Given fracking in the US as an example, it's no surprise at all that you'd find broad support for heavy regulation or a ban of fracking.

What's surprising about this is that it took so long.

<comment><USER10> Correct me if I'm wrong, but nuclear reactors have nothing to do with climate change. Reading GP then your reply seems ambiguous about the "environmentally conscious".

<comment><USER11> He does not mention climate change at all. Germanys antinuclear movement is against nuclear reactors because it is still unclear what happens to the waste. Remind you that were are speaking of a country that is populated quite evenly, there is no space where you could leave it for ever with noone affected. Same for fracking: somebody will live in the area where fracking occurs. But big money does not care about these people. Therefore Germans are against it altogether.

<comment><USER12> Waste disposal is almost entirely political. That Germany is shutting down the objectively cleanest reliable source of energy is tragic.

All of the nuclear waste Germany generates would fit in a single football stadium. Technically you'd pick something below the water table and geographically stable, like say, a salt mine.

Burning coal produces more nuclear waste, it just dumps it all into the atmosphere.

<comment><USER13> The nightmare looks like this:

[https://antinuclearinfo.files.wordpress.com/2013/02/wastes-g...](https://antinuclearinfo.files.wordpress.com/2013/02/wastes- gorleben-salt-mine.gif)

"Just dump it in a salt mine" and leave it there for a million years doesn't work. It can't work, be realistic.

<comment><USER14> Nuclear waste disposal is a serious issue. But compared to burning fossil fuels for energy, it's by far the lesser of two evils.

Most of the more dangerous fission products will have decayed sufficiently to be "safe" after hundreds, or thousands of years. Nowhere near a million!

Anything that lasts longer than that emits so little radioactivity that it's pretty much background noise.

There are plenty of _naturally_ occurring sources of radiation that are strong enough to be dangerous - like Radon in Cornwall, UK. Even if a future civilisation accidentally digs up one of our waste sites in a few thousand years time, it wouldn't really be any worse for them than digging up some natural radioactive source.

<comment><USER8> > it wouldn't really be any worse for them than digging up some natural > radioactive source.

Really? That would be mostly oxidized uranium - white not really harmless it's something different than highly toxic plutonium - besides that you have extremly toxic decay products that e.g. pose a problem for the chernobyl area.

Besides that there are more than enough isotopes used in nuclear energy that have a half-life of millions of years.

If you look at the history of Europe in the past 2000 years it's not exactly been peaceful - also something to consider - especially as we have the knowledge to use nuclear reactors to weaponize this waste.

<comment><USER14> Nuclear waste shouldn't contain plutonium. That stuff is expensive, so there's an economic incentive, as well as environmental, to reprocess waste and recover any remaining fuel.

Chernobyl (and Fukushima) are entirely different (and much worse) because you do have the nuclear fuel itself being exposed to the environment. But waste fission products in a modern reactor are far less dangerous compared to the fuel that goes in, especially once they have been properly reprocessed and then stored for while.

Isotopes with half lives in the millions of years, as opposed to years or decades, really aren't all that dangerous in terms of radioactivity. Longer half life generally means less radiation.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> I was shocked to learn water used in fracking is permanently "gone". Seems like an absolutely atrocious abuse of a resource we have a fundamental dependence on.

<comment><USER16> It's not gone it just becomes groundwater. Sure we won't see it back in any of our life times, but it's not as if we're going to run out any time soon.

In that respect fusion would be far more permanent.

<comment><USER17> No, I do not think this becomes 'groundwater'

Fracking is below the water table and and water used will be effectively lost to the water cycle. If it does leak back up, it will be polluted.

<comment><USER16> Effectively lost mean different things on a human and a geological timescale.

It could take millennia (or longer) for the water to slowly push through various kinds of bedrock, to finally get above ground again. By that time whatever contaminants were in it will have been filtered away.

It's an incredibly slow process, but it's not as if we could somehow drain the oceans by fracking at full speed for several millennia.

</comment></comment></comment></comment><comment><USER18> Indefinite until regime change. Never say never.

<comment><USER19> Considering the fact that right now both the left and the green party (both anti-fracking) make up the _opposition_ , I doubt a regime change would change much.

</comment></comment><comment><USER20> That is NOT what the German media is reporting:

[http://www.spiegel.de/politik/deutschland/fracking-was- steht...](http://www.spiegel.de/politik/deutschland/fracking-was-steht-im- kompromiss-der-grossen-koalition-a-1099146.html)

It is a compromise, not a ban. Certain tests will be allowed, until those are concluded there will be a moratorium (halt) on full-scale commercial fracking.

What's with the BS being reported about Germany lately? First the misreporting on the electric vehicles, now this.

<comment><USER21> Reuters could have better described the moratorium ([https://en.wikipedia.org/wiki/Moratorium_(law)](https://en.wikipedia.org/wiki/Moratorium_\(law\))) vs a law and should have avoided the word 'indefinitely' in the headline. But I don't think the article grossly misinforms the reader: it lists the 5 years, it lists the compromise, it mentions the exceptions for the tests.

<comment><USER22> Actually, "indefinitely" is the correct word, it's just that its colloquial use is not its literal meaning.

"Indefinitely" means "for an indefinite amount of time". It does not mean the same as "infinitely", even though many seem to think it does.

<comment><USER23> Why not to clarify it in the article? That's the usual trick a lot of newspapers use to catch someone's attention. Really poor journalism.

</comment></comment></comment></comment><comment><USER24> Alex Epstien, who is widely despised, has written, in _The Moral Case For Fossil Fuels_ that to withhold cheap abundant energy, and the technology it enables, from the world's emerging populations is immoral and fundamentally anti-human. Supported by people who think this Earth would be a much better place if Man never set his filthy foot upon it.

<comment><USER25> What if that energy has a 10% chance to destroy humanity's reserves of fresh water?

<comment><USER26> Yeah, one of the main issues is clean drinking water. A third of the world is facing consequences of lack of clean drinking water. Energy from fossil fuels can be used to purify water. This is one of the main arguments for fossil fuels in the book.

</comment></comment></comment><comment><USER27> They've banned WHAT??

Oh FRACKing...never mind.

</comment><comment><USER28> Seems like German government wants to ban every energy source except for coal.

<comment><USER29> You might want to read a bit about "Energiewende": [https://en.wikipedia.org/wiki/Energy_transition_in_Germany](https://en.wikipedia.org/wiki/Energy_transition_in_Germany)

<comment><USER28> I see no concrete dates set for the end of use of coal. The fact that nuclear power generation is specifically set to phase out in 2022 means that they'll still be using coal by then.

<comment><USER30> They are indirectly set. Look at the table in the Wikipedia article. There are clear goals for a reduction in CO2 emissions and to achieve that coal has to be phased out</comment></comment></comment></comment>


Google to mull ways to store Russian users' personal data locally - <AUTHOR> http://en.itar-tass.com/economy/747924

<comment><USER2> I'm sorry, but since when is itar-tass a remotely reliable source?

<comment><AUTHOR> Yes, it could be a completely bullshit story or not.. who knows [http://mashable.com/2014/09/05/google-to-move-personal- data-...](http://mashable.com/2014/09/05/google-to-move-personal-data-to- russia/)</comment></comment>


Ask YC: Advice on learning programming in 9 months - <AUTHOR>

I am tempted to quit my job and move to the bay area to spend 9 months focused on learning programming and a bit of web design.
I already know a bit of programming, one college course of Java worth but not much.
I am an aspiring startup entrepreneur and want to get to the point where I can start creating cool stuff. I could probably get by depending on others to do the technical stuff, but I feel like in the long run learning programming is really important for my desired career path.
I know it takes longer to become a great hacker but I hope to learn as much as possible in 9 months.
What advice would you have for someone thinking of doing this?
I am thinking of starting with HTML/CSS and Javascript and working on some simple browser add-ons, so I can start creating stuff that applies what I am learning relatively quickly.
I wish something like Ars Digita University still existed today but it doesn't. I am thinking of joining something like the Hacker Dojo or something similar. <comment><USER2> If your goal is to create cool stuff now, you don't necessarily need to learn how to program. You can build prototypes in PowerPoint or Keynote. My partner and I built <http://www.thankthanknotes.com> in 8 hours using Wordpress, a pre-built template, wufoo, paypal, and almost no code.

Now, if you have a genuine interest in programming that's a different story. I do know it's taken me years to become a half-decent developer (I come from a design background). So, have some patience. What do you do now? Did it take 9 months to be come proficient? But don't let a lack of dev experience/knowledge keep you from building something cool.

</comment><comment><USER3> Google Code University (<http://code.google.com/edu/>) has some good resources</comment>


Show HN: Anti-Stress news reader based on sentiment analysis (Android) - <AUTHOR> https://play.google.com/store/apps/details?id=ml.sentinews <comment><USER2> I really like the concept of this app, can you explain how the app determines whether an article is good or bad news?

<comment><USER3> The app uses algorithms of sentiment analysis [https://en.wikipedia.org/wiki/Sentiment_analysis](https://en.wikipedia.org/wiki/Sentiment_analysis) All news classify by their positive/negative features. The set of features was created with the help of deep learning technique. A lot of news sources for different languages were analyzed to automatically extract the typical "good" or "bad" patterns for classification.</comment></comment>


How Do I Install SQL Server Machine Learning Services - <AUTHOR> http://www.nielsberglund.com/2017/03/04/microsoft-sql-server-2016-r-services-installation/ <comment><AUTHOR> How to install In-Database Analytics in SQL Server 2016 and 2017</comment>


The death of the blog post (and rise of the blogazine) - <AUTHOR> http://www.smashingmagazine.com/the-death-of-the-blog-post/

<comment><USER3> Translation into SmashingMagazine title: Top 3 Blogazines You Should Be Checking Out!

In seriousness though, those people they mentioned don't _just_ have interesting designs with each article--they also have interesting content. Dressing up a "Top 10 WordPress Plugin" post in a special skin isn't going to make it any less shallow. However, maybe designing a skin for an article forces people to think more about what they are writing. After all, it'd be a waste not to put effort into the content if so much effort is being put into the design. I really just want more interesting content.

</comment><comment><USER4> This is a great idea _if_ you're a designer and know what you're doing. I shudder at the thought of how appalling my personal website would look - <USER2> geocities at its worst! - if I tried this.

Conventions may be boring, but they allow us design duffers to focus on the content itself.

<comment><USER5> to be fair, if you aren't good at design then your "same design on every page" design probably isn't very good either.

I really like the way they are presenting information -- there really is a problem on the web of nav-on-the-top-and-left, ads-on-the-right, boring presentation and it's good to see someone trying other things. Having said that, I don't think they got it quite right wrt the scrolling/page-down flow. I'd like to see something like this that was a bit more screen orientated. Their example is more like something I like to see on a tall poster and doesn't fit screen browsing quite right. I don't know what the answer looks like though.

</comment></comment><comment><USER6> If I'm reading something, I don't want to be distracted by the fancy text layout and bright shiny colors. I just want clearly presented text with a minimum of complexity.

In rare cases special formatting can enhance the effect or help interpret something written, but in most cases it adds nothing except clutter. I found this article nearly unreadable because of the "interesting" and "exciting" way they presented it.

<comment><USER7> I thought this article wasn't well done, but they do link to some examples that are better. This is one:

<http://gregorywood.co.uk/journal/top-5-spielberg-films>

I really think consuming that article is more satisfying than yet another top 10 list with a hastily pasted thumbnail of the movie art.

</comment></comment><comment><AUTHOR> I actually really like the blogazine concept, but it's very unlikely for me to have the time and the effort to put into creating a unique, story-led layout for a post. On the other hand, doing it for content that really deserves it would certainly stand out. Even at the base level the 'blogazine' approach of using illustrations alongside text is something that blogs are forgetting how to do.

</comment><comment><USER8> This article fails to mention one of the best magazines on the market: The Economist. It is always the same: simple title, one picture, and lots of columized text.

In addition, they also forget the newspapers. They are always identical from day-to-day. Just because it might be easier to style a "Top X" list doesn't mean it still isn't a useless "Top X" list.

<comment><USER9> Absolutely. I posted a rant recently on how _Scientific American_ lost me as a subscriber (and an evangelist) when they switched away from the 'journal' format, going so far as to increase the size of the body text to put out the same number of pages with about 10% less content.

I like and admire good graphic design. But not as much as I like and admire good writing. Does anyone think sites like Metafilter or HN would benefit from an orgy of visual style?

</comment></comment><comment><USER10> Man, what is with all the snark around here lately? This thing is gorgeous and there's nothing wrong with that. When Dustin or JSM does it, it gets upvotes up the wazoo. It's even praising those authors and acknowledging prior art.

</comment><comment><USER11> Ever since I read Jason Santa Maria's article on his "rethinking" (<http://jasonsantamaria.com/articles/a-new-day/>) I've been thinking about doing something similar with my personal site, where the frequency of posts has reduced over time.

I agree with the comments here that the smashing article went overboard; what particularly annoyed me was the use of different colored words for emphasis instead of bold or italic. I kept thinking those were links and obsessively moused over them to check. In their overzealous sale of the idea I think they definitely missed the mark about how design should work with the content. This is exactly what Jason Santa Maria points out in his post.

He specifically mentions that he may not always have time or the inclination or possibly even a need to do something special for each post. If that's the case he has a great default template for such articles. I highly recommend reading Jason's original article of a more sane and reasonable version of the idea.

</comment><comment><USER12> ...said the blogazine.

<comment><USER13> It's worth noting that Smashing Magazine is not normally a full-on blogazine; only this particular article was like this. Their previous post was much more in the format of a normal blog: [http://www.smashingmagazine.com/2009/11/18/designing-css- but...](http://www.smashingmagazine.com/2009/11/18/designing-css-buttons- techniques-and-resources/)

<comment><USER12> They have "magazine" right in their name.

<comment><USER14> You seem to have missed the point of the article and instead fixated on the "azine" part. Unfortunate.

<comment><USER12> How is that unfortunate? Do you really think that I'd be poised to launch the next Earth-shattering blogazine, if only I understood the subtle point of this article? Or were you just trying to be clever, without demonstrating any insight of your own?

<comment><USER14> > How is that unfortunate?

Because your comments may dissuade people from reading the article who may otherwise enjoy it.

> Do you really think that I'd be poised to launch the next Earth-shattering > blogazine, if only I understood the subtle point of this article?

No.

> Or were you just trying to be clever, without demonstrating any insight of > your own?

No.

<comment><USER12> My initial comment was only intended to remind people that it was in fact a blogazine that was declaring the death of blogs and the rise of blogazines. I don't mean to dissuade anyone from actually reading the article for themselves, we just need to be aware of whose opinions we're listening to.

If you're going to criticize someone for "missing the point" you should at a minimum explain what it is they don't get, that way you demonstrate that it is not you who has missed the point

<comment><USER14> smashingmagazine.com is NOT a "blogazine" as defined by the article. This one post is the exception.

<comment><USER12> So smashingmagazine.com, the blog/magazine, is not a "blogazine" as defined by...them? Thanks for your insight.

<comment><USER14> Correct.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> I get my blog content via RSS. All that fancy formatting and layout never reaches my eyes. That plus consideration of the average half-life of a blog post makes additional effort...well...kind of pointless. (Unless the point is to make art, which is different.)

</comment><comment><USER16> Great survey.

Their question as to whether blogging is "too easy" really resonates with me: I began prototyping a CMS a while back on the premise that Blogging Should Be Harder (a reaction of sorts, I guess, to services like Posterous and Tumblr [full disclosure: I am a very happy user of the latter]). And what I found is that if it's hard to design a "blogazine"--manually setting type and choosing colors for each individual post--it's just as challenging to build an "anything goes" CMS.

I still think it's a great idea. There might only be a handful of people out there who would use it, but those that did would likely be producing really top-notch content.

<comment><USER17> Hey, it's Langer! I didn't know you were an HNer.

What's the difference between your theoretical CMS and a WYSIWYG HTML editor? Something like Weebly or Google Sites? I'd think they already cover the "custom HTML" tactic pretty well. Beyond that the only thing you could possibly offer is custom graphic design, right? Or were you thinking pre-build templates in certain styles, the way iWeb offers for web design?

<comment><USER16> Hey!

Well the difficulty really arises when you want to go a step beyond full HTML control and allow for JS and AJAX (think pagination with really artful page transitions). How do you allow users complete control without turning your service into a cesspool of XSS attacks?

</comment></comment></comment><comment><USER18> I'm surprised that people would be so dismissive of this. Good design should obviously result in something usable, but there's nothing wrong with presenting it in such a way so as to take advantage of the medium.

The best way to present information is not always text on plain background. This should be obvious for anybody who has had to visualize data to make it understandable. The blogazine idea carries data visualization forward from quantitative to something more qualitative.

<comment><USER19> I don't think people are being dismissive of the concept of cool visualization but the idea that it will replace typical blogpost (The death of blogpost). I can consume this once in a while - but if they this every single post or frequently I will be quite turned off to read the content.

</comment></comment><comment><USER20> _If all you have is text, text, text, then people will be less likely to read it. Put a little effort into styling the content, and your post will become much more readable._

Pah. Text is good for people who can think about what they're reading rather than what they're seeing. They are my audience (such as it is).

</comment><comment><USER19> This is why some of us use bookmarklets like readability <http://lab.arc90.com/experiments/readability/> to get rid of the visualization crap so that we can concentrate on the things that matters most: Content

<comment><USER21> Funny thing is that when I went to read the posted article, I realized I did not have that bookmarklet on the particular browser I was using and immediately went to get it.

</comment></comment><comment><USER22> On that note, check the redesigned Engadget...not quite a 'magazine,' but edging in that direction...<http://www.engadget.com/> (not in the sense that every post is designed differently, but in the way content is highlighted)

<comment><USER23> Yeah it's nice looking and pragmatic. The quick stats on the right are useful and a great visualization.

</comment></comment><comment><USER24> _These guys aren't using standard WordPress themes or cutting corners to make their lives easier. Rather, they are challenging themselves and producing some fantastic content._

appearance != content

<comment><USER7> Why not? What _is_ content? Is it possible for the appearance to "mingle" with the content in a way that enhances or creates greater content? At that point is the appearance part of the content? Or is it more like a "content additive" ?

<comment><USER17> In this case, content is material that I the consumer am interested in. I'm potentially interested in writing. I'm less interested in design. I don't read blogs to look at the design, I read blogs to read blogs. So if you're capable of creating logical, readable designs time and time again, go for it.

But that's not happening. This article was not very readable: It broke itself up into fractious chunks, highlighted words in the middle of normal sentences, and generally jizzed.

I love that it brings up normal magazines and says they'd be boring if they looked the same. Newsflash: Normal magazines _do_ look boring. When I read an editorial, it looks the same week after week. When I read articles, sure, there're big quotes and pictures and the text is _laid out_ differently, but the writing itself sticks to the same font/size consistently. That's what makes it readable.

The problem with the blogazine is that most blog posts don't have enough content for what they're dealing with. A 10-page magazine article with a hundred potential photos can use a layout. A page-long article that's blogazined is fluffing up without providing shit. People who're so easily wooed by designers that they still ooh and aah at big fonts, they eat it up, but readers who want a no-bullshit presentation are turned away.

<comment><USER7> Thanks for your detailed response. I agree that smashing did a piss-poor job in presenting this stuff - but I think they linked to some examples that do it really well. You are 100% spot-on with the font size/color/weight stuff.

I think the idea with some of the posts is that it allows for random access rather than linear - and I think there is some value in exploring a page to see what it contains for some readers. Quality is still probably the most important aspect as you said.

</comment></comment></comment></comment><comment><USER25> My eyes! My eyes!

</comment><comment><USER26> Don't you normally have one person who writes the article and (at least) another person who does the layout and photography for the article in a normal magazine?

I'm not saying that this is not a great idea for a new content type, but it seems to me that the intersection of people who are good at web design and people who are good at writing (about things that aren't web design) is probably a fairly small set (in comparison to the set of people who are good at writing).

You also have to notice that the signal to noise ratio in a magazine (feels to me) much higher in a traditional print medium than it is in a magazine. The text gets stretched out over a much larger area (although the trade off is worth it for magazines where the pictures help to tell the story).

A lot of the time, the design is there in order to cover up the apparent lack of information in the magazine. Have you ever read Cosmo? It is mostly full- page advertisements.

Although that does bring up the fact that you could monetize a blogazine really easily by including full-page advertisements and making it so you have to scroll through it. Imagine one of those really pretty magazine-style photo- adds on a blogazine, I would imagine that the click through rate would be pretty good, and you could charge just for showing the add.

Appearance and textual content meet somewhere (otherwise we would all be using HTML 1.1 or whatever), but I doubt we will be seeing full-blown blogazines go mainstream any time soon simply because of the technical skill involved (and how bad it will go if you don't pull it off properly).

</comment><comment><USER27> Blah blah. Chewing on names. Pure onanism.</comment>


Chrome Extensions for Heavy Readers - <AUTHOR> http://www.slideshare.net/charlesmiglietti/read-smarter-not-harder

<comment><USER2> Presented as a slide deck - one of the less efficient ways to publish information (to an audience not in an auditorium).

<comment><AUTHOR> Thx for the feedback I'll make a blog post out of it.

</comment></comment><comment><AUTHOR> List of extensions: Clearly, tldr.io, Pocket, RSS Subscription, TooManyTabsOpen, Buffer, High Contrast.

<comment><USER3> Clearly come from Evernote

</comment></comment><comment><USER4> Why Pocket instead of Instapaper? I'm not sniping, I'm genuinely curious.

<comment><USER5> as a long-time paying user of Instapaper who recently switched to Pocket, here are my reasons:

      - a desktop mac app is available
      - I really like the 2 View options (article view and text view) as I read a lot of technical articles that include code snippets and these are rendered terribly on Instapaper
      - the iOS apps are snappier and crash way less often
      - search is baked in the apps

the fact it was free didn't enter into consideration at all

</comment></comment><comment><USER6> I use mostly iReader, It removes the ads/clutters and displays the article in an easy to read view.

<comment><USER7> Seconding iReader. A really nice tool, exactly right for the job. Works on virtually all sites for me.

</comment></comment><comment><USER8> Does anyone know of a better, more modern version of zapreader? I use that several times a week for getting through long articles from sites like the Atlantic and the Economist. I can't believe that nobody has picked up that idea and made something really polished.

</comment><comment><USER9> Your submission history suggests that you are involved in the development of at least 2 of the 7 extensions. (buffer and tldr.io)

Are any of the other extensions your work?

It's disingenuous to pretend to impartially recommend products that you work on.

<comment><USER4> I fail to see where he pretended to impartially review anything.

<comment><USER10> I actually assumed it was an impartial list. I don't believe he's trying to be misleading, but a disclosure would be nice.

</comment></comment></comment><comment><USER3> TLDR.io of course [http://tldr.io/tldrs/51112ad2de23f15658000035/read- smarter-n...](http://tldr.io/tldrs/51112ad2de23f15658000035/read-smarter-not- harder-in-chrome-without-google)

</comment><comment><USER3> That's an awesome improvements of Chrome ! (without Google by the way)</comment>


Are Web APIs as available and performant as you think? - <AUTHOR> http://www.apiful.io/intro/2016/06/27/api-quality.html <comment><USER2> "We anonymized..."

Okay but BBC was the only API that didn't support ping or HTTPS so we can clearly see in the "anonymized" graph that it's API-14. Instead, since the purpose wasn't to shame the APIs but to report useful data on availability, they could have grouped the APIs independently by protocol.

</comment><comment><AUTHOR> Interesting 3 months experiments with 15 APIs tested around the world</comment>


When the Intern Writes the Billing System - <AUTHOR> http://tghw.com/blog/when-the-intern-writes-the-billing-system

<comment><USER2> In 2005, what was the variable pricing billing system that we could have used instead?

It's easy to look at Stripe and Braintree today and say 'Ha! Those Fog Creek dummies! They should have used one of these awesome companies with great APIs instead of writing it from scratch.' Guess who existed then? Not Braintree (founded 2007), not Stripe (founded recently). Even authorize.net only did (and still does AFAIK) subscription billing for something like a gym membership where you bill the same amount every month, not variable amounts like we do. Chase Paymentech was the horrible processor you had to use, and their crummy APIs were and still are atrocious. When you opened a merchant account, the bank had to come visit your office to make sure you were real and that you had posted the 'we accept Visa/MC' stickers on the window even though you never even did face to face transactions. It was a different time.

So yeah, today if you are starting a company, don't roll your own. But don't look back on the code you wrote in 2005 to accomplish something that couldn't be accomplished any other way, and wonder why you did it that way. You didn't have any other choice.

The only choice now is, do we stop spending time building better products, and instead rewrite our billing system to work with one of the modern gateways, to get us in the exact same spot we are today? (No.) Do we rewrite our system to take advantage of modern credit card vaults so we don't have to worry about a Linode? (Yes, did that years ago). Cost vs. benefit.

</comment><comment><USER3> I wrote my own billing system in 2003. I used TrustCommerce as the provider. They actually had decent APIs even back then.

</comment><comment><USER4> Why not use Recurly, BrainTree or something similar?

<comment><USER2> recurly founded 2009. Braintree founded 2007. When this code had to be written? 2005.

<comment><USER4> Yup, understood. Sorry for loss of context; I was asking about Linode!</comment></comment></comment>


Apoptosis Gem - Which lines in your project need to die? - <AUTHOR> http://github.com/swerner/apoptosis

<comment><USER2> This is a great idea! You may want to use `git ls-files` instead of `Dir[' __/ _._ ']` in order to consider only tracked files inside the directory.

<comment><AUTHOR> Cool, thanks! I whipped this up the night after the talk so there are probably some kind of inefficient parts in the interest of getting it released quickly. I'll get right on that.

</comment></comment><comment><USER3> This is totally backwards: code you haven't touched in a while hasn't been touched /because it works/. It is the code you've recently edited where the larger number of buga are going to be found, and the more attention needs to be applied. When code is stable you don't delete it: you trust it.

<comment><AUTHOR> Michael Feathers is the author of Working Effectively With Legacy Code. This is basically that software projects, as they age, have a tendency to become huge unwieldy monstrosities.

While this gem is kind of a joke, reminding you of older code that was written a long time ago when you knew less about the problem domain than you do now (since you've been working on it for the last year), checking older code for refactoring/rewriting opportunities can make life easier for you in the future or whoever maintains the code after you.

Speaking as someone who inherited a huge untested codebase - debugging those sections that were written early on and work most of the time, but have never been refactored to take advantage of things that were learned later on in the project, is pretty unpleasant.

</comment></comment><comment><USER4> I'm gonna run Apoptosis over the Apoptosis code base in a year, and see what warnings it throws up ;)

</comment><comment> j-kidd > He made a point that software is alive and unlike biological systems, > doesn't have an automatic way to kill off old 'cells'.

That's just crazy talk. Software doesn't grow old!</comment>


Giraffe: Using Deep Reinforcement Learning to Play Chess - <AUTHOR> http://arxiv.org/abs/1509.01549 <comment><AUTHOR> [http://www.technologyreview.com/view/541276/deep-learning- ma...](http://www.technologyreview.com/view/541276/deep-learning-machine- teaches-itself-chess-in-72-hours-plays-at-international-master/)</comment>


Dropbox refusing to service customers wanting more space - <AUTHOR> Individual users of Dropbox cannot purchase more space beyond 1Tb. Dropbox is refusing to service these customers and instead tries to get them on a business plan. The business plan is x 4.5 more expensive requiring a minimum of 3 users. Worse still, DropBox spams individual users to upgrade to a business plan with popups using the DropBox application installed on their machine.<p>https://www.dropbox.com/plans <comment><USER2> Guessing you'd like to pay $200 a year for 2TB of storage? Seems like a reasonable request. However, you are in a tiny minority, and offering that would cannibalize business plans because companies would share logins to save money. As a regular Dropbox user, I want them to sell business plans to pay for all the free users that make my life easier.

1TB is still larger than the free space on most computers so restricting 2TB to business is a segmenting strategy that doesn't limit most users.

Have you thought about why storing 2TB is important enough to pay $200/year but not to pay $450/year? Maybe there is a way you can use the extra features in Business to mitigate the difference.</comment>


Show HN: Darken – Darkmode Made Easy - <AUTHOR> https://github.com/ColinEspinas/darken <comment><USER2> OK, but from a designer's perspective, you want to be careful with just inverting colours. The contrast is way too strong here from the demo you offered and the visited link 'purple' is already bleeding on black.

Have a read of an article such as this one, and be smart about colour translation. You might need to calculate contrast or offer a contrast setting as a minimum, and watch for shadows.

[https://uxdesign.cc/turn-the-lights-off-designing-the- dark-m...](https://uxdesign.cc/turn-the-lights-off-designing-the-dark-mode-of- wego-ios-app-6c4967e59dd6)

Side note: I've been really happy with the "Dark Reader" plugin on various browsers. Have a look at it and see how it handles brightness (+/-) and contrast (+/-).

<comment><AUTHOR> This API do not invert colors, it uses CSS variables and classes for more customization. No mix-blend-mode or anything. The demo has been done quickly this afternoon, I'll probably change it for the next version.

</comment></comment><comment><USER3> Why would you prefer this over, as another commenter already pointed out, a web standard like the CSS `prefers-color-scheme` media feature? A web feature like that works across websites, is better equipped to deal with user accessibility issues, and doesn't require Javascript.

<comment><AUTHOR> The use case is different, the standard CSS `prefers-color-scheme` media feature changes the styles according to your system preferences. Here, the goal is to offer to the developer a simple API to create a customizable darkmode feature. I've just started writing this API but I intend to make it more customizable by including `prefers-color-scheme` option and timestamps based darkmode.

I hope it make the thing more clear.

</comment></comment><comment><USER4> If you need an extremely quick way to implement dark mode, you can use the darkreader[0] npm package. I set it up for our app in ~30 mins.

The only big downside I've seen so far is performance, but I haven't quantified it yet.

[0] [https://github.com/darkreader/darkreader#using-for-a- website](https://github.com/darkreader/darkreader#using-for-a-website)

<comment><USER5> I just tested this out on a complicated site and it is amazing! Thanks.

</comment></comment><comment><USER6> Just a random note, I recently switched VSCode to a white background and loving it! I guess, I'm over dark mode everything. For me it seems to help focus better to code on white background.

<comment><USER7> We evolved to detect predators in greenery. I use a light green theme.

in Visual Studio Code settings.json edit those line : "workbench.colorTheme": "Default Light+","workbench.colorCustomizations": { "editor.background": "#e0ffec", },

<comment> 0-_-0 > We evolved to detect predators in greenery. I use a light green theme.

Do you spot bugs more easily in the greenery?

<comment><USER7> Here some reading for you : [https://www.ncbi.nlm.nih.gov/pubmed/24535839](https://www.ncbi.nlm.nih.gov/pubmed/24535839)

</comment></comment></comment></comment><comment><USER8> I think a before and after screenshot, with minimal configuration, would help to understand what it does, and see the "quality" of the results.

<comment><USER9> It has a demo page, "hidden" in the repo's description but not in README.md:

[https://colinespinas.github.io/darken/](https://colinespinas.github.io/darken/)

<comment><AUTHOR> You have a badge "Demo Available" too, I'll maybe do a more clear link.

</comment></comment></comment><comment><USER10> Having recently worked on adding dark mode to our service [0], we found that the technical implementation was pretty easy (generous use of CSS custom properties and prefers-color-scheme). The design work to make it look good, have proper contrast, etc. is much harder. The article the people at Superhuman wrote [1] is a really good resource for this.

[0] [https://kitemaker.co](https://kitemaker.co) [1] [https://blog.superhuman.com/how-to-design-delightful-dark- th...](https://blog.superhuman.com/how-to-design-delightful-dark- themes-7b3da644ff1f)

</comment><comment><USER11> I never change the mode of a website. I have rarely done so and it seems to me an absurd cost for nothing. If the site is well designed in light colors it shouldn't be a problem. If the site is badly designed then it would be normal to offer such a possibility. An operating system is different: you are 24 hours looking at it, it is normal to have display preferences but a website? The average number of visits to sites I have worked on has never exceeded 3 minutes.

<comment><USER12> Frankly, most of what I see of my OS these days is the status bar and the window decoration, a terminal window and maybe a file manager. Websites is what I stare at most of my day, and most of those are the same websites.

</comment></comment><comment><USER13> Speaking of dark mode. How bizarre is it that after all this time Apple finally puts something in iOS, and IT JUST MADE THINGS WORSE.

In the beginning there was invert colors. Then came smart invert - it worked with some things, failed with others, but was generally pretty good.

Dark mode (by way of prefers-color-scheme etc) should make things awesome in the long run, but at least for now all that's happened is to keep things dark I have to juggle fucking THREE different switches - and end up having to fall back to classic invert most of the time. Smart invert basically stopped functioning with iOS 13.

Properly implemented they could've had a fallback css override a la DarkReader and just put an extra switch per-website, crowdsourcing the results, as well as keep their own database/system override for lazy developers with already- dark apps who refuse to respect wishes (nudge nudge, Spotify...).

Ok, this is ranty, but this is such a weird regression touted as a "feature". Poor form.

<comment><USER14> While I agree with you that it's super annoying to be browsing in dark mode, just to open an app or website that hasn't implemented this.

But I disagree that Apple should be doing all the work, I really don't want them pushing their design opinions even further upon us (no matter how great they might be)

Not sure if this exists yet (although I think I've seen it before); a CSS parser that will automatically generate all the correct media queries to have a dark mode. Done by smartly inverting colours, possibly giving the chance to quickly override them yourself.

<comment><USER15> This is basically what email clients have been settling on doing, recently—though they have the luxury of working with a static resource, and not needing to handle any dynamic stuff.

[https://litmus.com/blog/the-ultimate-guide-to-dark-mode- for-...](https://litmus.com/blog/the-ultimate-guide-to-dark-mode-for-email- marketers) is a good article about this. We just released this sort of functionality for Fastmail's webmail within the last few days, too, matching what Litmus calls a partial colour invert. We find that it doesn't satisfy quite everyone, but the overall experience is much improved. I myself use light mode for my work email and dark for my personal email (partly to distinguish them, partly so I'm testing it—otherwise I'd prefer light mode), and this general approach has produced very good results in all but one case I've experienced so far (and that one was still acceptable).

</comment></comment></comment><comment><USER16> We recently launched dark mode for our email building app Milliner [https://www.milliner.app/](https://www.milliner.app/).

It allows you to build dark mode optimized email, and when you preview the email in dark mode, the whole app changes to dark mode.

Because of this we use a manual toggle instead of prefers-color-scheme.

We picked the colors carefully and changed things like shadows borders etc to make the interface look great in dark mode. Although a solution like OPs could be a quick and dirty way to get a basic dark mode implemented, you'll never get your site or app looking quite as good as getting a designer to look at it.

</comment><comment><USER17> why are people so obsessed with dark mode?

<comment><USER18> They don't like to be blinded by their white-background screens while using them in the dark.

<comment><USER19> I think OP was referring to the sudden obsession with dark mode (in the past year or so). It's not like screens and night time are new things, so what changed in the past while to induce this dark mode craze?

<comment><USER20> I think it correlates with the "blue light" studies that were released lately. As far as I know they weren't conclusive, but both Microsoft and Apple implemented Flux-like screen dimming, dark mode seems like a logical step.

Personally I prefer light themes, I just turn the lights on so that I don't sit in the dark.

</comment></comment></comment></comment><comment><USER21> Do you do anything different to other libraries like dark mode.js?

[https://github.com/sandoche/Darkmode.js](https://github.com/sandoche/Darkmode.js)

<comment><AUTHOR> Darkmode.js uses `mix-blend-mode` to invert the colors on the pages and offer a class based custom style system.

Here you also have the class based custom styles but also have a CSS variables based styling system. You can chose what value will take a variable depending on the current state of the darkmode.

See the readme of the github page for more informations, ask again if you need additional informations.

</comment></comment><comment><USER22> Neat! Using a browser add-on and brightness control of my displays improved my sleep.

A simple github page showing a demo with the code next to it might be cool, and the README size can be cut in half.

<comment><AUTHOR> There already is a github page demo, look at the description of the github project or at the "Demo available" badge. I'll probably change the demo in the next update, it is too simple and ugly. Thanks for the feedback.

</comment></comment><comment><USER23> This is awesome. Always wanted something like this, but never got around to being comfortable enough with CSS to try. Def will try it out on the next front end I throw together!

<comment><AUTHOR> Thanks, feel free to give feedback, submit issues and contribute if you want!

</comment></comment><comment><USER24> So, what's the easiest way for me to make HN dark? I have enough karma to change the color of the bar btw, I set it to C0C0C0 to make it stick out less.

</comment><comment><USER15> The actual code behind this is short and straightforward: [https://github.com/ColinEspinas/darken/blob/master/src/index...](https://github.com/ColinEspinas/darken/blob/master/src/index.js). For myself, I think it gets the balance of complexity wrong: it focuses on shifting various things into JavaScript, rather than doing it all in CSS using the (prefers-color-scheme) media query, and _rewriting_ media queries to achieve manual switching.

As a demonstration of the alternative approach I advocate, see what I came up with for my own website: [https://chrismorgan.info/blog/dark-theme- implementation/](https://chrismorgan.info/blog/dark-theme-implementation/). This uses native CSS techniques, working completely without JavaScript, merely using JavaScript to allow the user to manually switch, retaining that preference for future page loads and optimising page loading just about as far as is possible when doing it client-side to minimise the probability of a flash of inverted content if you manually switched to the opposite of what (prefers-color-scheme) would have chosen.

The main thing that my approach doesn't do that this thing does is dispatching an event, so that other JavaScript could conveniently be notified of a theme change. This is fairly deliberate on my part (I deliberately do all theme switching with CSS, and have no JavaScript that needs to change anything for dark mode), but could readily be added to what I wrote if desired.

With my approach (for which I will also clarify that the JavaScript is deliberately written for compactness, not some theoretical notion of maintainability or extensibility), the example:

      <button id="dm-toggle">Toggle darkmode</button>
      <script>
        const darkmode = new darken({
          toggle: "#dm-toggle",
          variables: {
            "--primary-color": ["#ffffff", "#000000"],
            "--secondary-color": ["#000000", "#ffffff"],
          }
        });
      </script>

… would be written more like this:

      <script>
        // (Add the button to the document in JS,
        // since it'll only work if this JS runs anyway.)
      </script>
      <style>
        body {
          --primary-color: #ffffff;
          --secondary-color: #000000;
        }
      </style>
      <style media="screen and (prefers-color-scheme: dark)">
        body {
          --primary-color: #000000;
          --secondary-color: #ffffff;
        }
      </style>

(Two style blocks because my thing doesn't deal with `@media … { … }` inline in CSS, because I don't need it. You could make it do it if you really wanted to.)

I find this approach much more manageable, and it allows adding custom CSS rules for dark mode (which I definitely use), rather than just setting CSS custom properties.

<comment><AUTHOR> I understand the concept of what you are doing, but I think those two methods have different use cases, yours may be more performant but mine, I feel, is more simple for everyday usage. I'll definitly look your work more in depth. Thanks for the feedback!

<comment><USER14> I was also a bit confused as to why the title was "DarkMode Made Easy", especially since your example just showed adjusting CSS variables. I would assume anyone who's working with CSS variables, also knows about media queries, so it's far easier to just do it all in CSS.

Where I could see this being useful is that you have a callback that you can use, so when dark mode is enabled, you can make some other adjustments when needed.

<comment><AUTHOR> You'll have a callback on the next version. I plan a lot of tweaks and features that can hardly be done only in CSS, moreover the plan is to give devs an easy way to do dark-modes. I understand the divergences and critics but want to try things as a student. I thanks you a lot for your review.

<comment><USER14> Don't get me wrong, it's great. Just that with the current examples it's not that useful to me. Callbacks would be cool!

<comment><USER15> I honestly recommend writing your own. The code is presently close to trivial, and if you write such a thing yourself you can take it in the direction that suits your requirements.

</comment></comment></comment></comment></comment></comment><comment><USER25> I feel you should be aware that "web developer" is misspelled on your website.

<comment><AUTHOR> Oh! Thanks for that, I'll fix the typo when I've got time

</comment></comment><comment><USER26> what's the intended use case?

<comment><USER27> It turns light colored websites into dark websites [1][2][3].

Here is an example: [https://colinespinas.github.io/darken/](https://colinespinas.github.io/darken/)

[1] [https://support.apple.com/en-ca/HT208976](https://support.apple.com/en- ca/HT208976)

[2] [https://css-tricks.com/dark-modes-with-css/](https://css-tricks.com/dark- modes-with-css/)

[3] [https://developer.mozilla.org/en- US/docs/Web/CSS/@media/pref...](https://developer.mozilla.org/en- US/docs/Web/CSS/@media/prefers-color-scheme)</comment></comment>


Show HN: World's First Crypto Market Sentiment Index - <AUTHOR> https://www.shufflup.org/SMSI.php <comment><AUTHOR> Today we are introducing world's first cryptocurrency market index - <USER2> Crypto Market Sentiment Index or simply SCMSI.

The preface: The traditional stock market has Dow Jones Index to monitor the market health but we noticed that our own crypto world doesn't have something like that. People generally use Bitcoin's price as market health indicator, whereas more than 50% market is dominated by altcoins. Hence we have developed a market index which takes into account the top 100 coins(based on market capitalization) and gives index points which indicates the market health.

The execution: We have used price-weighted method, the same method that is used to calculate Dow Jones Index. The divisor gets adjusted whenever a member(or constituent) i.e a coin or a token gets changed in the top 100 coins list. It means simply because a new constituent is getting added, this should not justify high value variations in the index. Hence just before the new constituent is introduced, a new "calculated" divisor value should be introduced and we just did that. This is very important because the list of top 100 coins keeps changing very frequently so our algorithm should be self- adjusting.

The value of the index is calculated every 5 minutes and always done so taking into account the realtime top 100 highest marketCap coins.

The Funfact: Today we got featured in Product Hunt as well and from now on you don't have to follow every coins' price changes to judge whether the overall market is bullish or bearish, rather just follow SCMS Index. Any feedbacks/suggestions would be highly appreciated and always welcome.

</comment><comment><USER4> Hi, Looks fine. What data do you use?

<comment><AUTHOR> Hi, We get the price data and ranking of different coins from the CoinMarketCap Public API. This data is used to calculate the Crypto Market Sentiment Index. Other than this, we also have two other products - <USER3> Tracker and Volatility Tracker. For those two tools we integrated APIs of more than 100 exchanges.</comment></comment>


Tesla to build the world's largest battery factory - <AUTHOR> http://electrek.co/2014/01/15/elon-musk-confirms-tesla-gigafactory-battery-plant-to-be-built-in-us-with-partners-announcement-next-month/

<comment><USER2> Sounds like it will be a JV with Panasonic. Panasonic has strong IPR and manufacturing processes in the field and since they are almost totally withdrawing from the consumer market and embracing B2B relationships where the customer takes on the consumer-marketing role, this would be a perfect fit.

</comment><comment><USER3> I wonder if he will build it near the rare earth metal mine near Mtn Pass NV. Of course most of the raw material will be Lithium I suppose.</comment>


The street view layer of openstreetmap - <AUTHOR> http://blog.mapillary.com/update/2016/07/15/mapillary-osm.html <comment><USER2> It's not clear from the content of the blog post that the title of the submission is relevant. The original is probably better since most people will not be familiar with what Mapillary does.</comment>


The President Wants Every Student to Learn Computer Science - <AUTHOR> http://www.npr.org/sections/ed/2016/01/12/462698966/the-president-wants-every-student-to-learn-computer-science-how-would-that-work <comment><USER2> Providing opportunities for kids to learn coding is great, but it's possible to go overboard with it (teaching pre-readers?). For example, I don't think it should be considered one of the core subjects that gets taught throughout K-12 (math, science, English, history).

Let's face it--being able to program anything interesting actually takes a tremendous amount of hard and often tedious work, and most kids won't be able to get over the hump. Think playing an instrument: can be very rewarding if you're good, but most kids don't want to grind out all those hours of practice. If it's problem-solving skills that we're trying to teach, math or even puzzle games engage those modes of thinking more directly, more generally, and with a smoother learning curve.</comment>


3 qualities of successful Ph.D. students: Perseverance, tenacity & cogency   - <AUTHOR> http://matt.might.net/articles/successful-phd-students/

<comment><USER2> These don't seem to be qualities of Ph.D. graduates</comment>


Ask HN:  What makes Lisp hard to learn? - <AUTHOR>

I'm interested in producing educational material on how to use a LISP.  What are the major pain points on the learning curve for everyone?  Specifically, what's tough to get coming from a Java or C# background?<p>Share your stories! <comment><USER2> The hardest thing is the lack of a "batteries included" standard package. There are competing implementations (which all have strengths and weaknesses) and lots of libraries (many of which are good, few of which are widely accepted as "standard").

The short answer is to setup SBCL and Slime/Emacs (here's a guide I wrote: [http://www.pchristensen.com/blog/articles/installing-sbcl- em...](http://www.pchristensen.com/blog/articles/installing-sbcl-emacs-and- slime-on-windows-xp/) )

A previous discussion on learning Lisp: <http://news.ycombinator.com/item?id=125766>

Plus another article I wrote: <http://www.pchristensen.com/blog/articles/how- to-learn-lisp/>

Additional resources:

SLIME/Emacs cheat sheet: [http://www.pchristensen.com/blog/articles/public- beta-open-f...](http://www.pchristensen.com/blog/articles/public-beta-open- for-ultimate-n00b-slimeemacs-cheat-sheet/)

Watch the SLIME movie (<http://www.guba.com/watch/3000054867> ) and read my notes on it ([http://www.pchristensen.com/blog/articles/reference-for- the-...](http://www.pchristensen.com/blog/articles/reference-for-the- slimelispemacs-screencast/) )

EDIT: To avoid the setup hassle entirely, try Thnake (<http://jasonfruit.com/thnake/> ) - a Linux liveCD with SBCL/SLIME/emacs preconfigured, complete with webserver and gui packages.

<comment><USER3> I note that the poster described _a_ Lisp and not specifically Common Lisp. Clojure at least has plenty of batteries available via its Java interoperability. The biggest thing holding Clojure back at the moment appear to be installation, building other people's projects, and IDE setup.

I don't know if Clojure is a helpful suggestion to the OP but it is certainly a more appealing way for me to get into Lisp than Common Lisp was.

 _Edit:_ I have just recently completed the install/build/IDE trifecta myself thanks to ELPA and leiningen but it certainly wasn't a one-day process. One of my biggest problems was reading out of date tutorials rather than the latest and greatest. It can be hard for a newcomer to see a HOWTO blog post from mid 2009 and decide whether or not to try it out.

<comment><USER2> I can do an SBCL/emacs/SLIME setup in 15 minutes or so, but I've done it a bunch of times. Someone following my guides can do it in ~1 hour.

I'd love to try out clojure, but I want to type something like 'sudo apt-get install clojure-sandbox'.

<comment><USER4> Leiningen actually isn't that far from being exactly that. It's not a one- liner, but setting up a scratch project that'll give you a repl is very straightforward. Setting up swank is only _slightly_ less simple because you've got to edit a config file. It can be difficult to figure out the right incantation for that because the docs are pretty nonexistent, but google is helpful enough there.

</comment></comment></comment></comment><comment><USER5> For me, coming from java, macros and closures were the two concepts that were completely alien and made a huge difference. Java provides a lot of structure (packages, classes, interfaces) that result in a lot of reassuring boilerplate code. If you're using lisp for conciseness, there is no boilerplate to comfort you, to signal where you are and what you should be doing at this point in the code.

</comment><comment><USER6> Hmmm, I started learning it in 1979 (sic) when my major experience was FORTRAN, BASIC, and an obscure language called PPL who's major features I hadn't taken advantage of (it was for a summer class). I'd toyed with/looked at COBOL, PL/1 and C.

The biggest thing, I think, is that it's based on expressions rather than statements, which is rather a different model than the Algol family (more or less) languages mentioned above. And for me, learning the importance of indentation for code comprehension, but that had already started with my learning C.

And then there's recursion; you can't do idiomatic LISP without it ( _The Little Lisper_ or nowadays _Schemer_ is good for that).

Ideally you'll also learn functional programming; optional in Common Lisp, hard to avoid in Scheme, and there's little point in using Clojure without it.

Frankly, I find it delightfully simple. The conceptual base is small, the syntax of parens, atoms, immediates (e.g. numbers) and special forms (e.g. if) makes is a very regular language, no "cancer of the semi-colon.

It's really quite nifty, and of course back then there was pretty much nothing faster with which to develop software. You mostly just have to unlearn some stuff and be willing to put in some effort, which will be well rewarded.

</comment><comment><USER7> I come from a C/Unix shell/Perl background mostly (with a sprinkling of Java). The main stumbling blocks that I found were:

1) oddly-named functions -- rplaca, cadaddaddr and the like

2) weird "macho" indentation -- more so than the much-maligned parens. I found that at some points of The Little Lisper, I needed a ruler to make sense of the indentation level. I have hopes that the default 4-column indentation in Clojure will make it much easier for me to learn.

3) strange control flow constructs. Trying to make sense where the condition, if and else clauses begin and end in an "if" can be a pain. More so for "cond" or "do". Combine that with 2), and things become unreadable quite fast.

By the way, none of these would be a showstopper if I had to learn Lisp for work or college. Just that, they made it not worth my time to try to learn it for fun.

Edit: I forgot, tail-call recursion. A single misstep and your CPU and memory footprint go from constant to exponential and/or Ackermaniac.</comment>


Ask HN: Computer Science for the mathematically challenged? - <AUTHOR>

I love programming. I began with AppleScript in elementary school and progressed through PHP to Ruby and eventually Python. I've dabbled in Haskell. When I find the time and energy, I work through Project Euler puzzles and MIT Intro to Computer Science and Programming on OpenCourseWare. I want to make this my career. MIT has been my dream since early childhood.
And I'm terrible at math. My brain doesn't process numbers or shapes very will, and in algebra, I tend to make silly mistakes. As a result, I am not in the highest "normal" math track for juniors, but in a slightly easier (not remedial, but not advanced) course and earning straight A-minuses and B-pluses. It's been like this since elementary school. This doesn't seem to bode well for acceptance to a high-quality computer science program.
I don't believe this hurts my ability to program. My abstract reasoning skills tend to be exceptionally sharp; I enjoy and succeed (A to A- level) in AP Chemistry and take an honors english course. I can model a complex system in my head and figure out what it entails. I can see processes and how they can be improved. And, from my time on HN and Wikipedia and ceaseless questioning as a young child of my dad (a news editor with an encyclopedic knowledge of pretty much everything) I am familiar with a fair amount of information, giving my classmates the impression that I am "smart."
But the B+ in precalculus disagrees. What gives? Is there something I can do to get better at math? Am I just not working hard enough? Or do I need to reconsider my identity as a programmer? <comment><USER2> For what it's worth, I too am a mathematically-challenged person, except I'm in the beginning stages of learning to program. Predictably, it's an uphill battle.

You said MIT is your dream: presumably you want to go there for computer science. I'm a student at UChicago, minoring in computer science. Depending on which school you go to/end up at, you'll realize that there are a number of different approaches to teaching CS.

UChicago's CS program is basically an applied mathematics major with some theoretical content thrown in in kind of an ad hoc manner. Let me tell you, it's not the _best_ place to go if you want to learn how to build things, nor how things are built. It's really good for math geeks. (I use the term "geek" affectionately here.)

My advice should be taken with a grain of salt, but you might consider CS degree programs which focus more on software engineering and practical applications of computer science, than on comp. sci. itself. But again, the scope, requirements and course offerings of computer science programs vary greatly between institutions.

Good luck with MIT!

</comment><comment><USER3> I had a very bad experience with maths when I was younger, generally doing very badly and as such taking the sensible option of hating it. I even dropped my study of maths at A level, in spite of my huge love of Physics and desire to study it at University.

I was eventually convinced that I really should take maths, so after a year out I did. I personally found the difference in the topics being studied to be drastic. No longer tedious mental arithmetic and boring calculation, but far more interesting things like calculus and mechanics! I suddenly found that things made sense, which had rarely been the case before. Perhaps you have a similar issue, and find calculation difficult?

I, like you, find that I make very many "silly" mistakes. This is something that continues to plague me. I have developed techniques to compensate for these weaknesses, so while it might take me longer to go through the "grunt work" of solving a problem, I can quite happily end up with the right result. I suppose my point is, while it is not an advantage, it doesn't have to be too great of a disadvantage!

I have also been diagnosed as dyslexic, though I don't really know how true that is. Perhaps this is something you might look in to.

</comment><comment><USER4> I wouldn't worry. At the university level, it really only becomes "math" once you finish calculus. At those levels, it's entirely about abstract reasoning and much less about repetitive arithmetic.

</comment><comment><USER5> how good are you at reading highly technical science papers ?</comment>


"An ISP in Asia is leaking routes to a Tier 1 transit provider" - <AUTHOR> https://www.cloudflarestatus.com/incidents/bzknm1t91kjq <comment><USER2> nanog thread: [http://seclists.org/nanog/2015/Jun/586](http://seclists.org/nanog/2015/Jun/586)

Basically what's happened here is that Telecom Malaysia told one of Level3's networks (AS3549 - Global Crossing) that it was capable of delivering traffic to... anywhere on the Internet. Global Crossing apparently didn't have the usual sanity checks in place.

Because of how BGP works, once GBLX decided the route seemed reasonable, it immediately proceeded to dump huge amounts of traffic on the tiny Telecom Malaysia. This isn't incorrect behavior on GLBX's part (accepting the routes was incorrect, but sending the traffic was correct once they were accepted). This is _way_ more traffic than Telecom Malaysia was prepared to handle.

Every tier 1 network gets rid of traffic as soon as possible (because it reduces their costs), completely ignoring performance or whether a route seems sensible. Telecom Malaysia therefore claimed to the most attractive route from anywhere near Malaysia to most of the world.

Level3 is one of the biggest telecoms in the world -- and in fact the biggest by far in that region. This means that most of the Internet probably stopped working for anyone anywhere near Malaysia.

<comment><USER3> Do we know that this happened by accident? Because if all it takes is a few routing packages that is a very attractive option for any state that wants to attack another.

<comment><USER4> Hard to say, but accidents do happen.

However, it'd be a good idea for CAs to look at any "domain validated" certs issued during this time and re-confirm. Really, any service that does insecure account resets or takeovers should be a bit more wary than usual.

</comment></comment></comment><comment><USER5> This is rather comic: [https://twitter.com/TMCorp/status/609167065300271104](https://twitter.com/TMCorp/status/609167065300271104)

(That's the twitter account for the currently implicated provider which messed things up, and for the record it has a minion in a Hawaiian grass dress saying "Happy Friday!", posted about 10 hours ago.)

<comment><USER6> [http://devopsreactions.tumblr.com/post/87284390953/friday- de...](http://devopsreactions.tumblr.com/post/87284390953/friday-deployments- and-leaving-afterwards)

</comment></comment><comment><USER7> Telecom Malaysia (AS4788) was leaking a full routing table to a Tier 1 network, Global Crossing (AS3549), who in turn was advertising the prefixes to its peers like Level3 (AS3356). Large portions of the Internet would have been affected.

This is a double fail, both for Telecom Malaysia for leaking a full routing table, and for GBLX who apparently isn't filtering prefixes from their downstream customers or even restricting to a max number of prefixes.

<comment><USER8> I just remembered, GBLX was bought by L3 a few years back - I'm guessing someone has a "tighten up route maps for GBLX ASN" ticket open in their backlog at the Level 3 NOC.

The people managing peering for AS 3356 and AS 3549 should be the same group, no? ("That DB we don't share the URL of" seems to imply as much.)

</comment></comment><comment><USER9> Looks like it's party day at Telecom Malaysia. [https://twitter.com/TMCorp/status/609167065300271104](https://twitter.com/TMCorp/status/609167065300271104)

<comment><USER10> They added the route at 16:44 local KL time on a friday afternoon. The network team started partying early? :)

<comment><USER11> Malaysia is an Islamic country, so Friday is the equivalent of the American Saturday to them, i.e. Friday is the first day of the Weekend, and Sunday is a normal workday.

<comment><USER12> I'm an American living in KL. Malaysia follows the Monday through Friday work week. The Twitter message was posted in the AM and this event didn't occur until the evening.

</comment></comment></comment></comment><comment><USER13> Nanog discussion: [http://mailman.nanog.org/pipermail/nanog/2015-June/076187.ht...](http://mailman.nanog.org/pipermail/nanog/2015-June/076187.html)

</comment><comment><USER14> What is the impact of this problem? Any TL;DR from an expert on here?

<comment><USER13> People cannot access some internet sites, depending on who they have internet connectivity with.

[https://blog.cloudflare.com/route-leak-incident-on- october-2...](https://blog.cloudflare.com/route-leak-incident-on- october-2-2014/) has more information from a previous time this happened. A key idea is that internet routing depends a lot on trust, and it's possible for a single misconfigured site to cause serious issues across the internet.

<comment><USER15> I thought the point of the internet was that it was fault tolerant enough to be deployed on the battlefield?

<comment><USER16> This wasn't battle damage, this was operator error. Building a tank to survive a war and building it to work when driven in a ditch are not quite the same.

</comment></comment></comment></comment><comment><USER17> Apparently this is AS4788 (Telekom Malaysia) leaking routes.

[https://twitter.com/rrbone_net/status/609282081420652544](https://twitter.com/rrbone_net/status/609282081420652544)

</comment><comment><USER18> I was able to open reddit but I was not able to open wikipedia from Australia. So I did a tracert.

6 29 ms syd-sot-ken-int2-be-20.tpgi.com.au [22.214.171.124]

7 197 ms 10ge3-7.core1.sjc1.he.net [126.96.36.199]

8 199 ms 10ge1-4.core1.pao1.he.net [220.127.116.11]

9 * Request timed out.

<comment> ryan-c Looks like it made it to California (San Jose and Palo Alto) with what appears to be a reasonable round trip time. Weird.

Edit: It seems like that must have come through the Southern Cross Cable[0] which is nowhere near Malaysia.

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

</comment></comment><comment><USER19> I can't access a couple of US sites (like github, linkedin etc.) from my Swedish ISP Bahnhof.

<comment><USER20> Had the same issue from Berlin. (and probably unrelated to the original post anyways.) But now we are back online!

</comment></comment><comment><USER21> Can confirm UK ISP was unable to reach arxiv imgur mit or nytimes.

Ycombinator and reddit were A OK though.

<comment><USER22> that is because cloudflare has direct peering with many access networks. most providers see cloudflare routes directly and not through a transit such as Level3.

</comment></comment><comment><USER23> Here is an interactive snapshot of this outage:

Capital One uses Level 3 GLBX as a primary ISP: [https://oxqyi.share.thousandeyes.com](https://oxqyi.share.thousandeyes.com)

(Jump to BGP route visualization and you can see AS 3549)

On the routing plane, you can see that the London GLBX monitor had issues to many services and that AS4788 Malaysia Telecom was advertised in the route.

Here is an example from a LinkedIn snapshot: [https://wbpkq.share.thousandeyes.com](https://wbpkq.share.thousandeyes.com)

</comment><comment><USER5> Could someone elaborate on the scope of the problem? Is it a sensible question to ask "How many routes were leaked?" how big were the prefixes of the networks leaked?

<comment><USER24> Full table was leaked

</comment></comment><comment><USER25> I am very much interested in learning about such issues. Any links or blogs that put light on such issues.

<comment><USER26> There is a great chapter on BGP by Hari Balakrishnan. I believe the chapter is available on MIT Open Courseware. It should be under the Computer Networks class.

Edit: found it. See Lecture 4: [http://ocw.mit.edu/courses/electrical- engineering-and-comput...](http://ocw.mit.edu/courses/electrical-engineering- and-computer-science/6-829-computer-networks-fall-2002/lecture-notes/)

</comment></comment><comment><USER27> did this happen last night too (about 15 hours from when this post was made)? I am in India and was not able to reach my servers in Singapore or do a git push. All other sites worked okay. I scratched my head and changed my dns to 188.8.131.52. It still did not work.

<comment><USER28> It's not DNS - it's how the actual packets are supposed to get between you and the server, that got messed up.

</comment></comment><comment><USER29> [https://www.tm.com.my/OnlineHelp/Announcement/Pages/INTERNET...](https://www.tm.com.my/OnlineHelp/Announcement/Pages/INTERNET- SERVICES-DISRUPTION-12-June-2015.aspx)

</comment><comment><USER30> I see only this:

> Your IP address 184.108.40.206 has been flagged as a scanner. Scanners are not > permitted. If you are seeing this message in error, please contact > firstname.lastname@example.com.

Guess I better send an e-mail to see this status page..?

<comment><USER31> After I switched Tor circuits it worked fine for me.

</comment></comment><comment><USER32> just want to ask if there's anything a home user could do to detect unusual routing behavior/phenomenon? I'm envisioning something like a browser plugin that logs/monitors outgoing connections and traceroute data

With that, instead of just looking at 404s we can make more informative observations like this request got stuck at this node, or that request is routed through a new node which has never been seen before recently..

</comment><comment><USER33> Fuckups like this should result in criminal charges (and immediate depeering). DoS attacks are illegal in most countries and this is definitely gross negligence.

<comment><USER34> It's actually interesting why this idea is so totally wrong.

So Telecom Malaysia messed up a config, and Global Crossing accepted their updates automatically.

Global Crossing didn't have to accept the bad update. They generally trust updates from other organisations that are generally trustworthy. They apply checks and restrictions proportionate to the risks involved.

These mistakes happen rarely. If they were to happen more often, major operators would apply more checks and restrictions. If they were to stop happening, operators would apply less checks and restrictions, because they have a cost in manpower, complexity, and loss of flexibility.

That's how the internet works. You could almost say that's what the internet is--the idea of being actively managed by people who know what they're doing and are not bound by exhaustive predefined policies is defining of how the internet came about and how it came to be dominant.

If you want a network guaranteed to be resistant to this kind of f---up, build one. The internet is that network which does not work that way, which is flexible, expandable, mostly "good enough" but not ever designed for absolute reliability.

<comment><USER3> >It's actually interesting why this idea is so totally wrong.

No it is not. You accept their claims of "mistakes" I see no evidence of that - how, exactly, do you leak a full table by accident? and this is too big a security hole to leave to hackers. Leak a bunch of table, shut down an entire country.

<comment><USER33> Even if was a mistake, that doesn't suddenly make it OK. People make mistakes, yeah. But this isn't a simple mistake, in fact this incident consists of multiple mistakes.

1) Someone wrote an incorrect config

2) They did not test it

3) They pushed it to production systems without testing it

4) They did not monitor their systems after pushing new configs

5) They took ages to fix the problem after it was detected.

That definitely isn't a single mistake.

<comment><USER35> And how would you propose they test it?

It's a little difficult to test this kind of config without emulating the entire internet - which is quite clearly beyond the scope of all bar a very small number of organisations.</comment></comment></comment></comment></comment>


Flat UI jQuery Theme - <AUTHOR> https://github.com/ququplay/jquery-mobile-flat-ui-theme

<comment><USER2> The "flat" style being distributed today is a giant step backwards in usability, I can't for the life of me understand why it's so popular. On desktops, it's not clear until you hover that it's even an interactive element. On mobile? Forget it. You'll have better luck teaching your grandmother the difference between client and server side JavaScript.

<comment><USER3> > On desktops, it's not clear until you hover that it's even an interactive > element.

Have you considered that this is due to you and others being conditioned to believe that beveled/3d elements indicate interactivity whereas flat elements do not? Maybe a change is in order...

Also related to the abandonment of "fake" depth in web design is the latest A-List-Apart article, "Material Honesty" - <http://alistapart.com/article/material-honesty-on-the-web>

<comment><USER4> It's more likely that the problem is because there's very little perceived affordance[1] that differentiates interactive elements from inert design.

[1] <http://www.jnd.org/dn.mss/affordances_and.html>

</comment></comment></comment><comment><USER5> From a usability perspective I don't think this really works at all. For most of the UI elements, the only visual indication that you get that something is clickable (buttons, link, collapsibles) or separate (grouped buttons) is on mouse hover.

But this is for jQuery Mobile, and you don't get mouse hovers on the devices this is targeted for.

<comment><USER6> Don't be so dramatic. From a usability perspective, it works enough. Also, interactivity is changing and themes are options. People don't hover or click with touch devices.

Many UI concepts are in flux (again). Link? Button? Collapsible? Let go of what you know and watch people using flat UI.

There are many ways to hint interactions within flat design. As has always been, stick to more abstract interaction fundamentals and processes and don't wed yourself to fads based on current (or old) tooling trends.

It's easy enough to use color, contrast, font, positioning, size, shape, etc. all to indicate interaction points. That's all a gradient button is compared to the text in an old message box.

Also, there are two major thrusts in flat ui that make it compelling. One is the additional focus on content since the UI takes a step back once you spend less time tweaking artificial details. Which leads into the second point others are making. The time and energy spent in details to achieve fake results in a digital context are dishonest at best and grossly out of place from a design perspective. There's a little bit for everyone in there.

<comment><USER7> This.

"Flat UI is bad for usability" keeps getting repeated as a criticism against the flat UI trend but is not actually true.

Bad UI design is bad for usability, regardless of VISUAL style.

As jack_trades mentions, there are MANY other ways to convey interactivity without artificial depth, texture.

Think about a simple modal. Users know to look at the top-right, sometimes left, for controls for the modal. What difference does it make if the user sees a flat X icon or an X inside a beveled, drop-shadowed button?

Re: desktop vs. mobile; If a user has to hover over an element just to know if it's interactive then perhaps the design has already failed.

</comment></comment></comment><comment><USER7> The vertical alignment of the text is off and the colors are a bit muddy compared to the vibrant palette of <http://designmodo.com/flat-free/> (which was clearly the inspiration for this).

<comment><USER8> The vertical align is off in his screenshot, but in Firefox it seems to be spot on. Also I wouldn't worry too much about the colors, that's about the easiest thing to change yourself.

</comment></comment><comment><USER9> I tried porting it to jQM too. <https://github.com/iakshay/jqm-flat-ui>. Didn't really continue..

jQM is for mobile devices why are you using custom dropdown?

</comment><comment><USER10> More stuff available in the same kind of flat design style on <http://designmodo.com/flat-free/>

</comment><comment><USER11> Wow, great stuff. I was tempted to build this myself. Awesome to see it's already done beautifully!

</comment><comment><USER12> Nice! This is one of the better looking ones I've seen.

</comment><comment><USER13> Turquoise? Hope you've got good lawyers because LayerVault will have just sent a DMCA.</comment>


Strip Down Apache to Improve Performance vs. Nginx - <AUTHOR> https://haydenjames.io/strip-apache-improve-performance-memory-efficiency/ <comment><USER2> The part about compiling from source seems dubious and not backed by any data. Modules being dynamically loaded. They should not affect performance when not loaded. As for memory, I also doubt there will be any difference.

When compiling from source, you don't get automatic security updates from your distribution and you may break integration with the other parts of the distribution.

<comment><USER3> Yes, I'd like to see an explanation for or against compiling from source by someone who knows what's going on.

</comment></comment><comment><USER4> Apache can be just as fast if you remove the looking and reading of the .htaccess file in a local directory.</comment>


Ask HN: How many of you have to log hours? - <AUTHOR> Hi
I am a programmer and in my job I need to log all my hours against tasks in Jira, and submit that did the 40h.
Sometimes I don't like it because something takes longer than it should then I get pulled up on it. Sometimes the reason is I had a bad day couldn't concentrate etc. But it isn't good to say that so I need to invent an excuse.
My last job was similar and I really dislike it because it can only be bad for the programmer. Especially given how hard it is to estimate stuff.
Btw this is product dev work not billed out to client work. Those jobs I purposely avoid. <comment><USER2> I had to do it with one client. My philosophy is one of automation and never doing something twice - the less hours the client needs per unit work done, the better - and the philosophy of some of their managers was the opposite, that you didn't get what you paid for unless people sweated for it. In other words, they incentivised their own workforce and consultants not to automate anything.

So I made a read-only log, shared it with them, and started writing down everything I was doing to make their products. It ended up being really interesting as I never really analysed my development process, all the false tracks you go down for a while before reverting, all the data format changes, type errors you meet, avoiding repetition, documentation, flashes of inspiration, or how waiting for a query to complete breaks your flow... and I think they got a better idea of what is involved in producing stuff (no, it's not "just updating a few graphs" if you went and changed all the definitions and they come from 7 distinct data sources).

A side effect is that they got precisely the hours they paid for.

With other clients, I routinely used to put in a weekend or late nights if things didn't quite work, or if I had an idea for an interesting product that could be helpful to them. With these guys, it was "this is probably going to take me 10 hours. Can you approve these hours?" and 2 weeks later they'd say "OK" and I'd get started only then. They were so hours-driven that when I passed them a new product I did do in my spare time, they refused to even have a meeting to look at it in fear of having to pay for more hours. Quite amazing.

<comment><USER3> The problem with automation is, that everybody wants to be the benefactor.

So people who can't automate feel cheated by people who can.

</comment></comment><comment><USER4> In my experience only incompetent managers ask you to account for your hours for anything other than hourly billed client work.

The best projects I've worked on had:

* A manager who was technically literate.

* The tasks were documented and specified clearly.

* The project plan was prepared by a knowledgeable planner and thus realistic.

* Our weekly progress meeting focused on addressing the delay causing stumbling blocks.

My days as an employee are over. As a consultant, I bill for the completion of specific deliverables. I simply decline business from potential clients who demand an hourly rate. I just can't be bothered doing time-sheets and justifying why something took more time than planned. Occasionally I do underestimate the amount of effort a deliverable requires. That's the cost of doing business on my terms.

<comment><USER5> > In my experience only incompetent managers ask you to account for your hours > for anything other than hourly billed client work.

And the government. We recently started selling to the government, and now we have to report our tasks and hours. Every two weeks has to have at least 80 explainable hours.

</comment></comment><comment><USER6> Had to do it in one place - everyone hated it as far as I know. Small tasks / actions started getting pulled into "misc" task. I think I put some hours as "thinking". Having a desktop tracker where you can just put the task name without much thinking distraction and then start/stop it, was helpful.

What I learned from this experience: the data either was not used or nothing noticeable changed because of it, it made people angry, it wasn't even close to accurate. Now it's one of the questions I'd ask at the interview (red flags: task time tracking, no source control, no testing, no qa plan, too many managers per project, tech choices are political not from engineering, ...)

<comment><USER4> GIGO (garbage in, garbage out) applies to time tracking as well. Couple of places I've worked, we would put inflated time against "meetings" to spite the management.

</comment></comment><comment><USER7> Log hours is not required on my day job but I heavily do this easily with org- mode. This just get things done at least for me. I would recommend this if you're using emacs. Org-mode has a feature of time clocking as demonstrated in this link [0] that you could handle everything even if you got interrupted. Org-mode is amazing that you could track everything. Generating a clocking report for review is easy as pressing two keystrokes on your keyboard[1].

If you're new to using emacs, just use it for everything, every day, every time and after 3 months you'll be comfortable with it and might be able to like org-mode.

There are lot of resources over the internet, stackoverflow, mailing list, blogs, etc. If you're keen to learning emacs then the most important thing is just use it, use it, use it, use it.

[0] - [http://doc.norang.ca/org-mode.html#Clocking](http://doc.norang.ca/org- mode.html#Clocking)

[1] - [http://doc.norang.ca/org- mode.html#TimeReportingAndTracking](http://doc.norang.ca/org- mode.html#TimeReportingAndTracking)

</comment><comment><USER8> If you like the job and want to stay there a while, I would suggest also keeping a tickler file of your accomplishments. Refactor a particularly nasty bit of code and everyone went "whew!", write that in your tickler file. The reason is, if they mention anything negative about your time in your next review, you have your tickler file of accomplishments as a way of demonstrating how effective and productive you really are. Sure, it's more work and nobody who matters likes to toot their own horn, but it is best to keep data on your accomplishments. It makes writing self evals easy. It makes writing your resume easy. And, it makes sticking up for yourself in reviews[0] easy.

Likely, however, they are not really going to say anything. Some managers are old school and simply feel collecting time on everything is the way it's done, but end up doing nothing with the data because they're lazy.

[0] On the subject of reviews. If you ever walk into a review and have no idea what is going to be on the review, your manager is doing everything wrong! Leave that job as soon as you possibly can. Period.

</comment><comment><USER9> Honestly, just take off if its bothering you. Anybody who has options is going to leave situations like that.

I worked at a place where the management tried to implement something similar. All of the main engineers left within about 2 months. They missed their big deadlines and over the next 1.5-2 years the rest of them (including management) lost their jobs. The product was sent off-shore and kept of life support for the remaining SaaS contracts. It was really quite sad to see something cash flow positive sink right to the bottom over something like that.

</comment><comment><USER10> This happened for a short while at an old workplace that had an extremely toxic environment, this didn't improve the environment. People were expected to clock in/out when they arrived as well as for lunch and breaks. Developers were salaried not hourly. I suggest leaving as fast as you can, asking to have tasks add up to 40h a week of work shows a fundamental misunderstanding of development by management.

</comment><comment><USER11> This was the bane of my existence when working in a larger corporate environment for 3 years. We used some SAP product that was written in 1995 using all of the best enterprise methodologies. It was slow, dumb, had obtuse validation rules and required all types of duplicate entry. I hope to never implement such a thing in my own company.

</comment><comment><USER12> Our accounting department recently asked us to track how much time we spent on internal company projects. Needless to say, an entire team was laid off after finding the amount of time going into said project wasn't cost effective.

</comment><comment><USER13> I had to track hours in recent jobs. I have tried a lot of tools, but found that Hamster's Gnome3 extension was the least distracting, and actually helped to keep me on task.

I will only got better at predicting time, when log/report ing real-hours not expected-hours.

I also set a maximum time spent blocked on tasks, ideally a short period, and reported every time I go beyond that point. This way if I needed help, I could get it. If help is not provided, employers wont be surprised by work schedule.

</comment><comment><USER14> We're a product company. We track time, but only so we can plan our sprints better. We do estimates as a group using planning poker, which has the added benefit of fleshing out (and limiting) scope.

Our minimum unit of trackable time is 30 minutes. This helps us recognize how expensive context switching is.

Most importantly, each member of the team is only allocated ~30 hours per week to allow for all the nonsense that has a tendency to pop up.

</comment><comment><USER15> I tried to do this, in jira, when I first started at my last company, and was told not to.

It takes time to do programming work. Sometimes you need a good think. Sometimes meetings distract you. And even off hours, I'm often thinking about how to do stuff. A problem at work, I might set aside, have a good night, and wake up in the morning with a solution.

Anyway this sounds like poor management. I don't have a really great answer on that.

</comment><comment><USER16> I run a software agency with 8 peeps, and we all log time using Toggl. We have a bot that then sync's with Jira tasks - and generally we find this pretty painless.

For the benifit of being able to do accurate estimation comparisons, retrospectives, hunt time vampires etc - I personally think it's worth it.

</comment><comment><USER17> I find this interesting... I may not compare easily as a contractor but at every job for the last 6 years as a contractor I have logged sometimes two and in one occasion three timesheets every day.

it does not bother me, in fact sometimes it helps me realize I might be getting burnt, when i see the numbers go too far up, I see it as a barometer.

</comment><comment><USER18> I have to log daily worked hours (eg 8am-6pm). Many people just copy and paste an entire week or month at a time and don't log every single hour, but I prefer to be more exact so that I have some documentation of overtime etc to keep an eye on or refer to.

</comment><comment><USER19> I log all my time against tasks too. I hate it.</comment>