Youtube hit 4 billion views per day - <AUTHOR> http://www.engadget.com/2012/01/23/youtube-hit-4-billion-views-per-day-deals-with-60-hours-of-uplo/ <comment><USER2> Does anyone know if YT is actually turning a profit for Google yet?

</comment><comment><USER3> The thing I love about youtube is that there is _never_ any problem loading the pre-video commercials for Cox internet or whatever. They always come through in HD and without any lag, ever. And then more often then not, I have to turn down the quality of the actual video because it can't stream at a high resolution. Suffice it to say, I don't really use youtube.

<comment><USER4> For the love of crap, THIS. I'm glad I'm not the only one who's somewhat miffed that the advertisements are getting preferential treatment to the actual content (the reason people actually GO to youtube).

If I wanted to watch advertisements at the expense of content, I'd subscribe to cable again.

<comment><USER5> The preferential treatment is more likely that an advertisement used across many videos is much more likely to be cached at a location near you than a specific video. Still sucks, but it makes sense.

<comment><USER6> An implementation where the ad is shown only after buffering a certain amount of contents would have been interesting.

You'd wait longer before anything happens, there would be less ad impressions, every metrics I can imagine would be lower than the current behavior, but it sounds so much more sensible. I'd love a service doing that.

</comment></comment></comment></comment><comment><USER7> 4 Billion videos a day, I'm always astounded by such numbers - who is watching that many Videos? A bit of common sense:

\- World population: 7 Billion

\- Estimated total Internet users (including those that can't use videos due to bandwidth/volume limits): 2 Billion

\- estimated max. potential Internet users for YouTube: 1 Billion

\- estimated max. daily active users for YouTube: 500-800 Million

so everybody on this planet that is continuously using the Internet has to watch at least 5-8 videos on YouTube everyday - 365 days a years. To me that looks like there is an army of bots out there creating loads of statistical noise & billions of page views.

Guess we'll never know for sure as billions of dollars are made every year with online marketing and advertising that is closely linked to such statistics.

</comment><comment><USER8> I would love if they provided some daily, or even live statistics. How much space and bandwidth are these videos consuming? Seeing this printed on a graph for the last 24 hours, month and year would be interesting too.

</comment><comment> colin-de-vries I dont understand why youtube has no Sopa/Pippa issues? I searched but didn't find a good answer. Could somebody expain that please?

<comment><USER9> What do you mean? If SOPA or PIPA had passed, YouTube would certainly have issues. Did the article suggest otherwise to you? As it is, YouTube receives DMCA takedown requests probably every single second, and they comply with them. So they stay alive. It seems the situation was the same with Megaupload, except that they didn't exactly comply all the time.

<comment> colin-de-vries I know about the DMCA takedown requests. But as I understand it YouTube has to do their own investigation with each upload. At the rate of 60 hours per minute. That seems a bit difficult if not impossible. In that respect YouTube should be taken offline like they did with mega upload and many other sites. So, why is YouTube not burned like many other websites. There are complete series seasons on YouTube. I guess i was just expecting more commotion around YouTube then there currently is. (For the record, I oppose to Sopa and Pipa)

<comment><USER5> AFAIK YouTube can't self-censor and remain in the DMCA safe harbor.

[http://en.wikipedia.org/wiki/Online_Copyright_Infringement_L...](http://en.wikipedia.org/wiki/Online_Copyright_Infringement_Liability_Limitation_Act#Knowledge_of_Infringing_Material)

This is why Justin.tv can go on when its top channels are obviously illegal. It has to receive notice as such instead of simply monitoring what's currently broadcast and killing things like football.

<comment> colin-de-vries Thank you for the answers. The replies makes sense to me. I just read that if you upload a Michael Jackson song you can get 5 years in prison. That's one year longer then what the doctor who killed him got.</comment></comment></comment></comment></comment>


Nexus 7 - <AUTHOR> http://www.google.com/nexus/7/index.html <comment><USER2> This has been out for a few weeks now. Why is on the front page? Topic could be a bit more specific.

<comment><USER3> I'm not 100% sure either but I suspect it's more about Google taking their design to a new level. These kinds of effects have been seen elsewhere before but it's interesting to see Google implementing them for their own real product pages. It looks good.

<comment><USER4> It may look pretty to some people, but it's horrendous to use in a desktop browser, especially when you just want the important information.

The video is a time-waster, without offering any useful information.

It then takes a bunch of scrolling just to get to the first panel with the basic details. Of course, they're quite limited, and interspersed within a bunch of irrelevant marketing nonsense.

Then even more scrolling is required to get further details.

The "Everything you care about ...", "Endless entertainment ...", etc. panels are huge space-wasters, without any useful information. I personally find them very distracting, too, due to how the page and background move relative to one another. They require more scrolling to get past.

It takes yet more scrolling to get to the "Tech Specs" link. Of course, it's broken for middle-clicks, so you're forced to open the specs inline. The font is unnecessarily huge, and there's excessive whitespace, resulting in even more scrolling just to view the specs. I don't even see any way to close the tech specs unless you scroll all the way to the bottom of them, and click the "close Tech Specs" link.

Finally, the useful pricing information is way at the bottom of the page, assuming the potential customer has even bothered to scroll this far down.

The useful information could have easily fit within one page that didn't require any scrolling whatsoever, without all of the marketing nonsense, and without the useless space-wasting imagery. I would be very pleased if I never had to encounter a page like that one ever again.

<comment><USER3> This isn't a product page made for anal programmers who want every bit of information condensed into a box the size of a terminal window. Average consumers are enticed by emotion and this is set to deliver in that respect.

</comment></comment></comment></comment><comment><USER5> I can't get past the video depicting a 12 year old boy listening to Spoon and watching The King's Speech. Have you ever _met_ a 12 year old boy?

<comment><USER6> So this is google's crazy impression of what kids look like now. He can listen to 'adult' music/movies, but the guts of this tablet are _completely_ hidden.

When I, and probably much of this site was that age I was dicking around with Linux distros and trying to get nvidia binary drivers to work so I could play quake 3. Then there was that whole thing when I discovered shell scripts and python. There are cs learning apps for android, but nothing like opening up a bash shell in linux and getting the python interpreter and command prompt. Hopefully that kid has access to a real computer, and a bloody password on his account.

</comment></comment><comment><USER7> Now without utterly broken flash memory drivers that cripple performance after a few months of use and took a year to fix!

<comment><USER8> Amen. As an otherwise satisfied nexus 7 owner (first generation) a lighter and thinner model would be nice considering it is already a go-anywhere device for me.

But the inexplicable slowness as the device ages and memory use grows is a crappy reason to have to upgrade.

It's funny how quickly a market evolves and competition ratchets up. I can buy for $200 a device that gives me capabilities that cost an order of magnitude more 10 years ago, but I also still expect the cheaper device to have robust and long term performance capabilities.

I'll upgrade for "more, better features" but upgrading cause the old one kicked the bucket after a year is asking too much.

And given the market dynamics, even for $200, I'm not being unreasonable! Gotta love capitalism.

<comment><USER9> It's because the memory needed to have fstrim run on it regularly. In Android 4.3, this now happens daily. If you're running a device with an earlier version of Android, you can use LagFix (requires root): [https://play.google.com/store/apps/details?id=com.grilledmon...](https://play.google.com/store/apps/details?id=com.grilledmonkey.lagfix&hl=en)

</comment></comment></comment><comment><USER10> "Everything you care about, everywhere you go." yeah. think about that, people.

<comment><USER11> * Requires internet connectivity via WiFi or Mobile Data

</comment></comment><comment><USER12> The Nexus 7 is a pretty nice device at a very good price. Apple needs to reevaluate if its really all about high profit margins or if it wants to get great products in lots of people's hands. The iPad mini is too expensive to have one per person which is a shame.

That said, iOS is still remarkably easier to use than android, especially for kids. And the nexus 7 hardware has a few problems, namely battery life and the odd shape.

</comment><comment><USER13> It is funny that in Canada, I cannot buy the N72013 from the Play Store but I can walk into Staples, The Source, Best Buy, Future Shop, etc, and pick one up for $249.

In fact, I bought my N72013 on the 31st of July and have been playing with it for a week. WTF Google?

</comment><comment><USER14> I dont know what tricks this page is doing but vertical scrolling is really choppy on that page.

<comment><USER15> That's just Google emulating the real Android experience.

<comment><USER16> I figuratively snorked at that.

(Did I do it right? We're switching literal/figurative, right?)

</comment></comment></comment><comment><USER17> Really like the sticky Buy It Now button on the top right. Interesting idea.

</comment><comment><USER18> Will this one stop working after 3 months like the Nexus 7 I bought in January did?

<comment><USER16> The flash memory issue should be gone even in your old nexus 7 after upgrading to 4.3 (and waiting a few days).</comment></comment>


How to avoid building a Frankenstein product - <AUTHOR> https://dislack.com/blog/how-to-avoid-building-a-frankenstein-product/ <comment><AUTHOR> Any tips you all have on building the right features for the right audience?</comment>


Multiple ways to compute e in Raku - <AUTHOR> http://blogs.perl.org/users/damian_conway/2019/09/to-compute-a-constant-of-calculusa-treatise-on-multiple-ways.html <comment><USER2> This article is a love letter to both mathematics and programming. It is awesome to read something and grasp the joy and playfulness of the author. The maths are explained in a simple way. The programming concepts go from the straightforward to the delightfully weird (and let't not kid ourselves, Raku shines the most the weirder things get). And the final result is downright fun. I love it.

<comment><USER3> Damian is a magician in the way how he teaches different subjects. His talk on calculating PI was fun too.

</comment></comment><comment><USER4> This looks surprisingly neat, honestly. I've never used Perl, let alone Perl 6, but I think I see why people cared about it.

<comment><USER5> Is it officially appropriate to talk about Perl in the past tense?

<comment><USER6> I think technically yes, because the present tense should be referring to Raku instead.

<comment><USER7> Raku is not the direct successor to Perl, active Perl development continues.

</comment></comment></comment></comment><comment><USER8> Computing e to thousands of decimal places is an interesting exercise for the mathematically inclined students in a beginning programming class. If you use the ∑1/n! series you can fairly easily do it even in a language that does not have built in arbitrary precision or an arbitrary precision library.

Let's say you want to deal with numbers to 1000 decimal places. Pick a base that is a power of 10, such as 10000. Represent a number as an array of 251 base 10000 digits, with the first item of the array being the integer part, and the remaining 250 being 250 base 10000 "decimal" digits.

You need two of these arrays. One represents 1/n!, and the other is the cumulative sum of the series so far.

You need two large precision operations. To go from 1/n! to 1/(n+1)! involves simply dividing by n+1. As long as we limit n+1 to under 10000, we only have to handle division with a single digit denominator. Limiting n thusly is not a problem--it's enough to actually support calculating e to over 35000 decimal places, so our modest goal of 1000 is no problem.

Implement the division exactly like you would do division by a single digit with pencil and paper. The only thing you have to worry about is dealing with carry. You can have intermediate values as large as the carry x the base + base - 1, and since carry can be as large as base - 1, this means you can have intermediate values as large as base^2 - 1. Just pick base (10000 in my example) so that base^2 - 1 doesn't overflow the basic integer type of the language you are using.

The other large precision operation you need is addition, to accumulate the result from the division into the sum. Same as with division--just write it using the same algorithm you would use with pencil and paper. Add digits right to left, with carry.

By using a base that is a power of 10, it is easy to figure out the base 10 representation of the final result for printing.

</comment><comment><USER9> This also shows one of the things that Perl was great at in the past: Personalities. Despite "Just Another Perl Hacker" being a common meme, there were some people who just stood out. Wall, Schwartz, Christiansen, Conway.

I think this is important for a language and IMHO current Perl can't compete with that. For a while Ruby had a pretty colorful and productive batch, and of course Go has some elder statesmen of the industry.

JavaScript... Well, it certainly has a lot of coaches.

</comment><comment><USER10> > Maksymilian Piskorowski found that if you happen to have a spare eight 9s, > you can compute 𝑒 = (9/9 + 9^(-9^9))^(9^(9^9)), which is accurate to a > little over 369 million decimal places.

Sure, because 9/9 = 1 and if you take x = 9^9^9, you get back (1 + x^(-1))^x, i.e. the first formula. It's cute, but I don't know if you could call it a "discovery".

<comment><USER11> You can see the formula Piskorowski used here [0], under "Best Approximations to e with n Copies of the Digit k". (All formulas marked with "MP").

He did in fact build up (1 + x^(-1))^x to slowly increase the accuracy of the formula.

[0] [https://www2.stetson.edu/~efriedma/mathmagic/0804.html](https://www2.stetson.edu/~efriedma/mathmagic/0804.html) (The page may say 2004, but has been actively updated, and has references to 2019.)

</comment></comment><comment><USER12> Why does the Bernoulli formula take exponentially long in the exponent? Python's native form (using either an integer or float exponent) and even an arbitrary percision computation to 1000 decimal digits using mpmath (also with either an integer or float exponent) are fast even for much larger exponents, and are accurate.

       >>> import math, timeit
       >>> x = 2**52
       >>> math.e
       2.718281828459045

       >>> (1+1/x)**x
       2.718281828459045
       >>> timeit.timeit(lambda: (1+1/x)**x, number = 10**6) / 10**6
       2.1324560802895575e-07
       >>> timeit.timeit(lambda: (1+1/x)**float(x), number = 10**6) / 10**6
       3.0082468304317444e-07

       >>> from mpmath import mp
       >>> mp.dps = 1000
       >>> (1+1/mp.mpf(x))**x
       mpf('2.7182818284590449335703801338125114…')
       >>> timeit.timeit(lambda: (1+1/mp.mpf(x))**x, number = 10**3) / 10**3
       0.0004724335519131273
       >>> timeit.timeit(lambda: (1+1/mp.mpf(x))**mp.mpf(x), number = 10**3) / 10**3
       0.00047394841397181155

(Times in seconds.)

</comment><comment><USER13> Also, Eccentric Euler's one-liner:

      > '𝑒'.uniname
      MATHEMATICAL ITALIC SMALL E
      > say 𝑒
      2.718281828459045

</comment><comment><USER14> How to compute e _properly_ , with consideration for error bounds: [https://www.nayuki.io/page/approximating-eulers-number- corre...](https://www.nayuki.io/page/approximating-eulers-number-correctly)

</comment><comment><USER15> I can't connect to this page, as Firefox is automatically redirecting me to the HTTPS version of the page even though it's not supported. I guess I don't run into this that often given how common HTTPS is, but maybe someone else has this problem with this site? If you are, have you fixed it before? I've tried all of the methods mentioned on this[0] page, and I'm on Firefox 70 on Linux Mint.

[0]: [https://stackoverflow.com/questions/30532471/firefox- redirec...](https://stackoverflow.com/questions/30532471/firefox-redirects-to- https)

<comment><USER16> Are you sure it's Firefox doing that? I've got 70.0.1 on macOS and it's displaying fine (with the red crossed out padlock in the address bar).

You sure you don't have HTTPS-Everywhere or something similar running?

(There's noting in the response headers or html meta tags that look like it'd be redirecting you too https there...)

</comment></comment><comment><USER17> I am not convinced by the interest charging analogy. It is back to front. The yearly interest is by definition the total interest that would be paid given the already agreed charging period. The loan shark does not advertise a 100% yearly interest (on a single yearly payment) and then suddenly increase his winnings by cranking up the number of payments. It is then no more a 100% yearly loan.

</comment><comment><USER18> I'd rather there was a single way to do something useful in Raku than multiple ways to do something completely useless.

<comment><USER19> It sounds like your goals for Raku are incompatible with the aims of the project, to the extent that making Raku into what you want would be "use something else" with extra steps.

</comment></comment><comment><USER20> Raku = Perl 6, just in case you're wondering.

<comment><USER16> Sort of.

More like "Raku (nee Perl6)" I think.

It's (now) called Raku, because it isn't really Perl any more - even though it started out that way. "Perl" is Perl 5 now.

<comment><USER21> Spiritually, it is very much a kind of Perl, in a more concentrated form.

<comment><USER16> Oh sure. It used to be Perl. But it's "married out" now and taken a new name, and is off doing new things.</comment></comment></comment></comment>


Birding Like It's 1899: Inside a Blockbuster American West Video Game - <AUTHOR> https://www.audubon.org/news/birding-its-1899-inside-blockbuster-american-west-video-game <comment><USER2> This kind of tiny piece by piece interaction with the world is something I desired in the late 90s, dreaming as a teen, but my rudimentary O(n) skills showed me was beyond the computers of the time.

It's gorgeous & I love the potential that brims here.

What if something was this complex and well built, but the storyline was removed - the player simply builds their own story, ala DF Adventurer mode.

<comment><USER3> I'm sure we'll get there eventually, its just much more difficult to write for. Even in Westworld, the interactions were semi-scripted, with packaged "quests" along the way.

Some games come close though, the Witcher 3 includes choice-based gameplay with real consequences that last thoughout the game. However the developers still had to explicitly write each scenario as it unfolded.

<comment><USER4> Since we're listing games with long-lasting consequences, I'll have to recommend folks who have been living under a rock to play the entire Mass Effect trilogy – to me, still the greatest game ever made (and I've played far too many games)

<comment><USER5> "Long Lasting Consequences" like changing the color of the sky during the final cut-scene...

Don't get me wrong, I loved those games, but when I played 3 and that was the big pay off...jesus.

<comment><USER4> The DLCs fixed the endings somewhat, but in any case the journey itself was amazing. Sometimes it's not just about the destination but how you got there

<comment><USER5> Eh, when you say "hey, the things you do are going to have a dramatic affect on the story" but they DON'T have a dramatic affect on the ending...maybe you fucked up a little bit?

Again: loved the games, had a lot of fun, but I was also disappointing that decisions I thought would matter wound up being relatively meaningless.

Not trying to say your experience playing the game wasn't valid, just that it might not be the best example to point to since that was a rather noteworthy example of what NOT to do for many people.

</comment></comment></comment></comment></comment></comment><comment><USER6> I think this is pretty neat, not just that so many species are featured but some of the other natural behaviors (e.g. fox and turkey vultures feeding on just-shot mallard carcass) are replicated.

Showed the article to my teen son, a big RDR2 fan, who was less impressed, calling it "sad" that someone would play a birder in that world. YMMV.

<comment><USER7> I wonder what he would think of the World of Warcraft panda pacifist: [https://www.pcgamer.com/world-of-warcrafts-pacifist-panda- ha...](https://www.pcgamer.com/world-of-warcrafts-pacifist-panda-has-reached- level-120-by-only-picking-flowers/)

</comment></comment><comment><USER8> The RDR2 environment is an amazing horseback camping simulator. Fishing, hunting, beautiful vistas... bliss

<comment><USER9> Side question, do you think there's a market for this sort of game? Outdoor simulator I suppose?

<comment><USER10> Reminds me a bit of Jeff Vogel's blog post about the first Red Dead Redemption:

"What was more surprising, though in retrospect it should not have been, was how instantly attached my eight year old daughter became to the game the moment she caught an unlucky glimpse of me playing it. Of course, it makes perfect sense. This is a game where you own a horse, ride your horse, take your horse out into the brush, find wild horses, capture and tame wild horses, and make one of those horses your new horse."

[http://jeff-vogel.blogspot.com/2010/12/red-dead-redemption-a...](http://jeff- vogel.blogspot.com/2010/12/red-dead-redemption-and-my-failures-as.html)

<comment><USER11> Rockstar should consider breaking their games down into sub games. They could build a G rated game about caring for wild horses and sell it for kids; they'd only have to remove content. In the full RDR2 game my daughter might have fun caring for horses, but she might also witness a random murder, pick up new words I'd rather her not repeat, witness a rape, who knows. I haven't actually played RDR2 but all of those thing seem like possibilities in a Rockstar game.

<comment><USER10> Exactly! The taxi, ambulance, and firetruck missions were some of my favorite parts of the GTA games, and featured relatively nonviolent, legal activities. They could easily be standalone games... One could argue the taxi missions already are, if you count Crazy Taxi.

<comment><USER12> I always thought Rockstar should've made an EMT / first-responder version of GTA where the goal was to help rather than harm.

</comment></comment></comment></comment></comment></comment><comment><USER13> Funny. John James Audubon, working in the early 1820s, didn't have a camera. So he shot lots of birds.[0]

0) [https://upload.wikimedia.org/wikipedia/commons/thumb/8/8e/Jo...](https://upload.wikimedia.org/wikipedia/commons/thumb/8/8e/John_James_Audubon_1826.jpg/315px- John_James_Audubon_1826.jpg)

Edit: Oops. Make that 1820s, not 1920s.

</comment><comment><USER14> This sounds great for replayability... but does that even matter now that digital copy auth servers will be long gone before you want to?

</comment><comment><USER15> Kind of a boring dystopia we have here. People enjoying the great outdoors from their climate controlled bedrooms. Good thing they only kept the cute animals in the game and not the mosquitos or black flies.

<comment><USER7> Back in my day, we had to enjoy the great outdoors uphill both ways!

<comment><USER16> We did. People used to spend more time outside, more time walking. Older novels seem to mention animals and plants modern people wouldn't recognize.

And of course there just existed more nature. We are destroying our environment and are losing many species. It's getting harder and harder to just enjoy a carefree joke about it...

<comment><USER17> I often think a lot about this, incidentally when taking long walks when not playing video games in my free time, and continue to arrive at the same conclusion: humans are merely evolution's self-brewed extinction event. A couple of severely consequential, yet random mutations led to an overtly destructive species.

Keep in mind that evolution is just the name for the mechanism that allows DNA to continue self-preservation by means of replication and recombination, allowing it to persevere in altering conditions.

So in a (sad?) way it is merely natural that many species die off as a consequence of our actions, as it was when the Permian-Triassic extinction hit. After all they are the result of our biology. That doesn't mean we shouldn't try everything to prevent extinctions and counter-act climate change. We do know that permanent loss of life is absolutely a possibility on this planet.

While we might cause Earth to become more akin to Venus with our behaviour, the apparent evolutionary disaster might also pay off for DNA by allowing it to become interplanetary.

</comment></comment></comment></comment><comment><USER18> Passenger pigeons were still around in the 1890s, weren't they? Is their omission deliberate since their range seems to have been east of the Rockies?

<comment><USER19> I believe the entirety of the game is set in a fictional equivalent of east of the Rockies, so I doubt it.

<comment><USER20> There's really not much equivalence to anywhere, other than the different biomes resemble ones you'd see in the US (outside of a side mission to Guarma, a fictional island near Cuba). There's a swamp area similar to Louisiana with a delta city called Saint Denis (pronounced San Da Knee). To the West (yes, West) of that is the 'southern' town of Rhodes with plantations and antebellum houses. Nearby is a former Civil War battlefield. Further west is the typical wild west frontier, with the nothern areas being colder and mountainous down to the more southern areas being grass and desert plains.

In game there is talk about real places (like New York, Cuba, Tahiti) but there is little context to where those are in respect to where the player is.</comment></comment></comment>


The myth of working from home - <AUTHOR> http://www.bbc.co.uk/news/magazine-21588760

<comment><USER2> Compare these two quotes:

> Glass was "flabbergasted" by the Yahoo memo. "This seems to be trying to > bring Yahoo in line with corporate America, not high-tech industries," she > says.

> Only last week Google's chief financial officer Patrick Pichette said when > the company is asked how many people telecommute, their answer is "as few as > possible".

What company better represents "high-tech industries" than Google? Maybe Apple? Microsoft? Amazon? My understanding is that these companies do not encourage or permit much working from home either.</comment>


Graphic Presentation (1939) - <AUTHOR> https://archive.org/stream/graphicpresentat00brinrich#page/n0/mode/thumb <comment><USER2> > _How charts ought not to be made_

[https://archive.org/stream/graphicpresentat00brinrich#page/2...](https://archive.org/stream/graphicpresentat00brinrich#page/22/mode/1up)

75 years later, it seems bad habits die hard.

<comment><USER3> I found that part really interesting since the requirement for a zero baseline today is limited to bar charts (see Few) whereas this insists you use it for line charts as well (which most modern data viz textbooks will say is okay because you judge the length of a bar chart but the position of a point in a time series).

<comment><USER4> This senseless insistence on beginning the vertical axis at zero is repeated in Huff's popular book, _How to Lie with Statistics_ , where he also claims that failing to adopt this rule results in "misleading" graphs.

<comment><USER5> It depends on whether you want to show relative or absolute change. Huff's warning about scales not starting at zero occurs when the chart has a caption such as "A massive five percent growth!"

In my experience, not starting a scale at zero often DOES produce a misleading graph.

</comment></comment></comment></comment><comment><USER6> By capturing abstractions over graphic formats it reminds me a bit of Alexander's _A Pattern Language_ and its relationship to buildings. The chapter on _Quantitative Cartoons_ gave me one of those "that thing has a name" moments and afterwhich a previously unremarkable piece of the cultural furniture becomes remarkable because we get a new way of seeing.

</comment><comment><USER7> A quick skim through the preview of it reminds me of how improved technologies bring ideas to our daily life. Only with the matured tools, we see more and more applications of many of the ideas from the book. The time/energy cost of bringing them to us was too high.

</comment><comment><USER8> It's fascinating to see a book approaching data visualization from first principles, without any preconceived notions or the baggage and confusion of modern tools and techniques

</comment><comment><USER9> Wow! This is truly incredible!

<comment><USER10> It really is. the Genealogy and Genetics section was eye opening.

</comment></comment><comment><USER11> wow, more Tufte than Tufte and much earlier.

<comment><USER3> You must not know Tufte very well or not have looked very closely at this text. It includes numerous recommendations to use decorative elements in charts, and that kind of thing horrifies Tufte.

</comment></comment><comment><USER12> Just looking at the previews of these makes me want to go back, and watch the making of these. Truly fascinating.

</comment><comment><USER13> off-topic but I was looking for a reader of my pdf-to-image converted documents. This reader looks really nice (and in-browser too).

</comment><comment><USER14> it's interesting!

<comment><USER15> Hi, Qwerty404. Welcome to Hacker News!

Please note that the HN community takes a rather strict approach when moderating comments that contribute noise to the conversation. "Nice article!" comments are routinely downvoted. As is sarcasm, witticisms, memes, references and other styles of comments that occur frequently but do not contribute to the discussion. It's a knowingly doomed attempt to hold back the flood of noise that covers Reddit.</comment></comment>


Ask HN: Salaries for remote depend on location? - <AUTHOR>

Anyone know - are remote workers who live in "cheaper" areas paid less because of "cost-of-living" or are they paid same?<p>I'm especially curious about Bay Area companies who hire remote. Do they pay remote employees who live outside of the Bay Area less than what they pay employees who live in the Bay Area? <comment><USER2> You get paid what you negotiate for yourself. If you agree to make less because you live somewhere other then the Bay Area then you make less.

The question is: why would you do that?

Your value to an employer is the same regardless of where you physically do the work. Keep that in mind when negotiating, and be sure to give a little chuckle over the phone when they suggest paying you less because you live where you do. No. But nice try.

<comment><USER3> If the person you're negotiating with isn't a complete push over, they'll say "No. But nice try." right back to you.

Your value to the employer might be no different, but your employer's value to you is much higher. There are fewer remote employment opportunities, and the employer knows the local ones pay much less. So, you're negotiating from a worse position, and you'll probably end up with a worse deal.

Of course, that's _their_ case to make, and you shouldn't make it for them. But, the reality is, your remote work salary is probably going to be influenced by your local conditions.

<comment><USER4> >Your value to the employer might be no different, but your employer's value to you is much higher.

I'm curious why you would make that assumption. If you're a talented developer, then you have employers around the world who want to hire you, not just in your backyard.

I've seen some truly gifted Eastern European developers charging $20/hr while their contract employers basically giggle at them behind their back, since they'd easily pay $100/hr for their talents. Some of them probably could have negotiated $150/hr.

People like that not only screw over their fellow programmers in more developed countries with high costs of living, since we can't get away with charging $20/hr and raising a family with a nice lifestyle like they can. They also -- and more acutely -- screw themselves.

Don't be that developer.

</comment></comment></comment><comment><USER5> I believe that the benefit of my choice to live in a low-cost area should accrue to me. If the company really believes in a remote workforce, they should pay based on value to the company. I am also saving the company on rent and probably some office-only benefits.

In general, they pay the high-cost-of-living person more because they won't take the job otherwise -- you could also not take the job otherwise.

You will have a harder time finding this, and it's a lot easier if you have the skills to back it up. You have to be as productive as an in-office employee and constantly make sure that is understood.

<comment><USER6> Lets go one step further - don't tell them where you're (going to) live. Now what can they do? Guess? Because really its no more your employer's business than what car you drive or your kids' names.

<comment><USER7> Although I agree with the basic premises - equal pay for equal work, employee should get the benefits of lower cost of living - I think it _is_ the employer's business in more ways than one. Taxes, time zone, internet connection - many things could come into play. Not to mention the golden handcuffs it could create if the employee is drastically overpaid for their local market.

<comment><USER6> Ok I'm agreeable to tell the employer what time zone I'm in, but that's about it. The rest I'll tell HR after I'm hired, so they can fill in their forms.

</comment></comment></comment></comment><comment><USER8> There's no hard and fast rule. It is up to the employer, and how well you can negotiate.

I work for an American company while staying in India. I am in a senior position, and they are paying me a little on the lower spectrum of what a developer like me would make in the US. But it is a lot more than what the average developer like me would make in India.

Technically, your employer should value your work and pay you regardless of where you are staying, but during negotiations, they will bring up your local cost of living (and I don't blame them for that).

<comment><USER9> Do you mind telling for which company do you work for ?

</comment></comment><comment><USER10> That might sound like a convincing argument while a negotiation, but IMHO, remote or not, salaries should be negotiated based on skills of the worker and not the cost of living of his/her location. Ultimately, you get what you negotiate for.

<comment><USER11> You may view your value based on your skills alone, but the employer is likely trying to hire you for the lowest rate possible that will keep you happy and make you likely to stay. The local cost of living does play into that partially because someone in the bay area can find a local job with higher pay while someone in the mid west will find remote work to be the most profitable.

Eventually this market should lead to people moving to lower cost of living areas because they are more likely to be hired for a livable wage there.

<comment><USER4> This really depends on what clientele you're marketing to (and what skill you have). If you're marketing to cheap contract employers who just want someone to hack up a mobile app for them, then you're right.

If you're marketing to someone based on your skills, which are rare and impressive, then you won't have any issues charging a high rate, regardless of your local cost of living. _If_ you bother asking for it.

</comment></comment></comment><comment><USER12> Have a read of [http://open.bufferapp.com/introducing-open-salaries-at- buffe...](http://open.bufferapp.com/introducing-open-salaries-at-buffer- including-our-transparent-formula-and-all-individual-salaries/).

Buffer have a base rate and then an additional sum based on location. Locations are split into 4 categories depending on how expensive they are to live in. Seems like a fair way of doing it, but obviously depends on the employer.

<comment><USER13> I'm not sure how that's fair. Should they also adjust your salary based on how expensive your car is? The value you provide to them remains constant despite where you choose to live. Why should you be punished for living somewhere less desirable? Presumably part of the reason you would choose to live in a less expensive location is so you can save more money. This to me seems like they're pocketing money that should rightfully be the employees.

<comment><USER5> It isn't fair, and people in low-cost areas should not take this deal.

You have to give them credit for the transparency, though. Most places would pay you less, but not tell you.

<comment><USER13> I like the transparency in theory. In practice I don't want my salary to be so easily determined by a quick web search. It could really inhibit my ability to negotiate a higher salary at my next job where they'll likely offer something like 5% higher than my current job. It's hard to justify a 50% pay increase.

I doubt most employers would hide that they're paying you less due to where you live. Instead I think most would bring it up in negotiations hoping to use it as a means of keeping your salary low. And honestly, the argument that your salary should be adjusted based on cost of living would work on a lot of employees even though it shouldn't.

</comment></comment></comment></comment><comment><USER14> Not implicitly, although people are free to use that as a negotiation tactic.

If people try to negotiate you down, you negotiate them right back.

</comment><comment><USER15> I'm the opposite. I live in SF but work for a AZ company, and am kinda getting the shaft on that. It's something I've accepted (for now) since I really couldn't ask for a better job.

</comment><comment><USER16> Absolutely, that's why I hire someone in the midwest instead of in town.</comment>


Spinnaker 1.0: A Continuous Delivery Platform for Cloud - <AUTHOR> https://cloudplatform.googleblog.com/2017/06/spinnaker-10-continuous-delivery.html <comment><USER2> Hey HN, we're here from the Spinnaker eng team to answer any questions and hear feedback you may have. Ask us anything!

<comment><USER3> Due to the cross collaboration with Google and Netflix, and the role Spinnaker can play in infrastructure and deployment pipelines of containers, do you think it will eventually go under a collaborative project like the Cloud Native Computing Foundation?

<comment><USER2> Spinnaker is a part of [NetflixOSS]([https://netflix.github.io/](https://netflix.github.io/)), no current intention I know of to submit it to CNCF. Spinnaker certainly does align with some of the core principles behind CNCF (e.g. containers, microservices), and our Kubernetes support is pretty strong (we'll continue aggressively improving it).

In any situation, we certainly run into member projects of CNCF with design considerations, and expect to continue working closely.

<comment><USER3> Makes sense, thank you for responding.

We're going to start a POC of Spinnaker soon and look forward to checking it out. The project looks amazing and really aligns with our goals and initiatives.</comment></comment></comment></comment>


Boomerang: A bidirectional programming language for ad-hoc data - <AUTHOR> http://www.seas.upenn.edu/~harmony/ <comment><USER2> This is cool stuff, developed by the same group that first did Unison (a synching utility that I have grown addicted to).

The basic point is being able to define maps between data structures and then being able to update either end of the map and see the results transformed on the other - which is what Unison does at the filesystem/machine level; this is the same concept taken to the data structure level. It's hard stuff to get right, but it is _so tantalizing_.

</comment><comment><USER3> Is it actively developed? The latest version is from 2009... I wonder if it have a version of 0.2, is it too far away from the last release?

It would be interesting to grasp what use it proves.

</comment><comment><USER4> If I recall correctly, early versions of JavaFX attempts this as well in its data binding, allowing bidirectional binding even in functions.

</comment><comment><USER5> Has anyone actually used this language? The Overview sounds interesting, but doesn't deliver any specific code examples...

<comment><USER6> There are several examples in the manual:

<http://www.seas.upenn.edu/~harmony/manual.pdf>

<comment><USER7> A lot of the code samples there are split at page breaks, making them difficult to read. Are they provided anywhere as plain text files?

<comment><USER8> The distribution includes the full source code for all of the examples in the manual.

Also, David Lutterkort at RedHat has developed an extension of Boomerang [<http://augeas.net>] that folks may find interesting...</comment></comment></comment></comment>


Nerds, we need to have a talk - <AUTHOR> http://thingist.com/item/4372/ <comment><USER2> So true. We're a bunch of horrible knowitall smartasses.</comment>


C# Generics History: Some Photos From Feb 1999 - <AUTHOR> http://blogs.msdn.com/b/dsyme/archive/2011/03/15/net-c-generics-history-some-photos-from-feb-1999.aspx

<comment><USER2> Wow, he was originally told by product team members:

> that "generics is for academics only"

I can't imagine programming C# without generics!!</comment>


System administration wisdom - <AUTHOR> I encounter more and more examples of people with scary habits when it comes to administering systems, or to a lesser extent, any project.
Occasionally I can forgive someone for not knowing that tools exist to help them do a job (while it may be painful to watch them work inefficiently for awhile, I can fix that).  But some habits are really hard to train them out of, and some make me wonder how the team functions at all.
I'll start with examples of course, and counter with what I consider to be acceptable.  But I'm also interested in your own experiences.  With any luck, this thread will become interesting to some, and educational to others. :)
[I've moved my list into a comment below.]
I'd be happy to see other mistakes people have seen, along with how you'd avoid the mistake, to educate the admins out there. <comment><USER2> One thing that I see often that annoys has to do with the logical volume manager. Many people allocate their logical volumes to use the entire volume group. This doesn't leave any room for snapshots, which is the #1 reason I use LVM in the first place. I've had to work around this in all kinds of crazy ways in the past, like unmounting the swap partition and reformatting it as a physical volume and adding it to the volume group. After I take my snapshot and I'm through with it I'll put it back as swap.

<comment><USER3> I'm with you on that one. Especially with current crop of huge disks. Volume groups should be resources which you carve up into logical volumes. Personally, I prefer to assign a separate LV to each application, DB tablespace. I also configure LVs to the current requirements and grow them as required. Have never seen a system that grows the way you expect it to.

With LVs you can also move things around without disrupting things. I often move running databases from JBOD to SAN using LV mirroring.

</comment></comment><comment><USER3> A sysadmin is like a member of the pit crew at the Formula One races. Don't admit anyone who is under-qualified, lacking practical experience and education.

I carry a notebook (dead-tree version) and take copious notes of before and after states, note each step taken and ALWAYS backup configuration files before changing them. Where applicable I snapshot configurations before and after listing, etc to a directory for that session.

If you are using service/consulting firms, watch-out! Over time they will send ever less experienced staff in their attempt to rack up profits. It never ends well. Eventually a simple mistake takes out a critical part of your infrastructure and they'll assign blame to some absolutely incredible and unrelated factor.

</comment><comment><USER4> I'd add not using a configuration management tool.

</comment><comment><USER5> doing everything by hand and not automating stuff

</comment><comment><AUTHOR> (Rather than keep a long initial post, I'm moving my list to a separate comment here.)

1\. _Lack of revision control._

I've seen this too many times. Someone messes with a file without even using a rudimentary revision control mechanism like RCS, then something goes wrong and no one knows why. What should require a simple "revert" suddenly takes hours to recover from. What should be obvious from a "diff" is instead limited by the accuracy of someone's memory. The sheer number of tools available for this is astounding, and the fact that many are free and simple to use makes it inexcusable to just "wing it".

2\. _Not using "sudo"._

The worst offenders I've seen just give "root" to everyone imaginable, who then use it all the time (often from a "#" shell that's been open for ages, in which they run all manner of random commands without paying close attention). I once saw someone use "rm -rf" _as root_ to delete a single symbolic link; I was cringing, hoping they would not type a space in the wrong place.

The "sudo" mechanism is a great friend to administrators. It forces a team to clearly acknowledge what privileges are required to achieve objectives, and it protects fallible humans from themselves.

3\. _Not using "visudo" and other helper tools._

I've actually been in situations where I was not the sysadmin, but had to clue in a sysadmin that "visudo" existed. I'd asked for changes to the "sudo" configuration that was used by some Very Important Scripts by Many Many People. Sure enough, the person made a syntax error in the file, which was promptly mirrored to a network of machines; this caused every single script to fail for some time. Had "visudo" been used, nothing would have gone wrong.

There are entire classes of errors like this that really are 100% avoidable: as long as you use the correct tools, nothing ever goes wrong. Administrators should be well aware of these.

4\. _Constantly messing with the core OS._

When did people decide that it was OK to be adding to or overwriting what's in /usr/bin and /usr/lib? The whole idea is that you do your meddling in /usr/local, or /somewhere/else/entirely, and leave the rest of /usr alone. This makes it clear if a problem is in the vendor's supported code or not, it simplifies OS upgrades and reversions, and nothing is ever damaged accidentally. I strongly recommend that Unix people read <http://www.pathname.com/fhs/> in its entirety.

5\. _Being change-adverse._

I am routinely frustrated by administrators who become paralyzed, unwilling to change anything except on a ridiculously-long-term schedule. What's worse, they then decide to change everything that needs changing _at the same time_. Ironically, what some see as avoiding disaster is actually a recipe for it; something breaks, and one now has to debug one of 45 possible causes instead of one.

An isolated environment for testing is essential (at least, to the extent that's feasible with available hardware money). Rolling out changes should be something that's easily done with confidence, due to positive experiences on a test platform. But too often, change becomes a source of paranoia and CYA instead of being a positive and regular way to boost productivity in an organization.</comment>


Government Releases NSA Surveillance Docs and Secret FISA Court Opinions - <AUTHOR> https://www.eff.org/deeplinks/2013/09/government-releases-nsa-surveillance-docs-and-previously-secret-fisa-court

<comment><USER2> > The NSA apparently believed that it had the authority to search the > telephone records database in order to obtain the 'reasonable articulable > suspicion' required to investigate those numbers. Essentially, they were > conducting suspicionless searches to obtain the suspicion the FISA court > required to conduct searches.

Yup. Exactly what we feared. They've been abusing the mass surveillance _all along_ , to skirt the legal system in Court, and get people convicted _with the illegal surveillance data_.

If all of that is not unconstitutional (not to mention against human rights), I don't know what is.

</comment><comment><AUTHOR> Hmm, did someone flag this? If so, why?</comment>


Microsoft is embracing Android as the mobile version of Windows - <AUTHOR> https://www.theverge.com/2018/10/3/17933644/microsoft-android-apps-windows-10-app-mirroring-report <comment><USER2> Microsoft could extend Android with an open sourced replacement for the various Google Play Services.

Paying for Microsoft to host a replacement services layer for your app on Azure would be cheaper than paying Google a 30% cut once you got past a certain use threshold.

As a bonus you can mitigate Google's decision to walk back Android being open and simultaneously give people who have decided to un-Google their lives an alternative to moving to iOS which would risk them moving to a Mac at the same time.

<comment><USER3> This really isn't possible as long as Google has exclusive agreements with most of the manufacturers. I mean, maybe they could talk Dell and HP into making Android variants, but there's no way Samsung, Motorola, LG, etc. could join that party while Google's iron grip remains. And as the other commenter pointed out, Google will heavily disrupt access to things like Gmail, YouTube, etc. for people not using "proper" Android phones.

That being said, the option may be available soon, since the EU and Russia have both fined and prohibited Google's agreements with manufacturers, and the Department of Justice is rumored to be considering opening an investigation here in the US.

<comment><USER4> Yes, the antitrust ruling could make things very interesting. Samsung would definitely be interested in replacing various google play bits. They've tried and failed with tizen. This would give them another shot. Admittedly, samsung's crap is going to be far worse than google's play services, but in the long run, it may lead to more cross-compatibility and openness because devs aren't going to support every reimagination of play services.

<comment><USER5> As terrible as Java shared development has been, it's at least a plausible model.

"We give up the ability to monopolize this technology in exchange for creating an alternative that the marketplace accepts."

</comment></comment></comment></comment><comment><USER4> If MS ends up launching phones based on AOSP like amazon, it could be interesting. Anything that reduces the near universal dependence on google play services really. My wishful thinking is that if AOSP ends up getting forked by 2-3 major players who become somewhat successful, we'll either get to some open standard for stuff that google play services provide, or webapps will become good enough that we won't need them.

<comment><USER6> Except Amazon's replacement sucks pretty hard. They are consistently multiple versions behind, and you can't even use applications like native YouTube.

<comment><USER7> Of course you can't use Youtube? Its a Google product. Its built ground up to depend on Play Services.

That being said Youtubes mobile site isn't abysmal and I'm not a fan of how the last decade saw the open web replaced by proprietary apps. A lot of sites work fine in a browser on a phone but still push users to use an application to interact with them.

<comment><USER6> FireOS on my Kindle Fire is still at Android version 5. Fortunately, I was able to install Google Play Services so that I didn't have to use the Amazon AppStore, however multiple profiles doesn't work well on the Kindle Fire. F-Droid is pretty awesome and the ADB toolset is pretty powerful too. I'd love to find a wrapper that just uses the core Android tools for management.

</comment></comment></comment></comment><comment><USER8> Microsoft should re-start the Android emulation project (the project that eventually became the Subsystem for Linux in Win10) and make Windows 10 the ultimate OS that can run anything.

<comment><USER9> If you want to run Android or Linux, why don't you just run Android and Linux?

<comment><USER8> Instead of one machine running everything, you want me to run 3 different machines? It's technically possible to do better than that. One OS that run anything we want would be amazing.

<comment><USER10> This looked to be MacOS for a while, but then came the iPhone...

<comment><USER11> That is true, though I still think that macOS still is the closest to that and that is one of the reasons I keep using the Mac. Mac+VMWare is a pretty flexible setup. I wonder, if anyone has a project going to implement a wayland server for Metal2? On the other side, the WSL looks very promising, so Windows is becoming more and more interesting, if one is a Unix guy.

<comment><USER10> I've switched from Mac to WSL. You're using a lot of integration with GUI layer and a _lot_ of polish, especially keybinding, tabbing and nice fonts. But it's useable and being able to use Linux package managers instead of homebrew is a big plus. Also, Thinkpads are so much nicer than current MBP - best of breed keyboard, all the I/O you need, nice case, 1TB SSD, 24GB Ram, 2300 USD pricepoint, everything else good enough.

<comment><USER11> I think WSL would quickly become a killer if MS added a Wayland server integrated in the native Windows UI.

<comment><USER10> this is obviously the next step I think.

<comment><USER12> In the meantime, there are already solutions to running X in WSL that are almost single-click:

[https://token2shell.com/x410/](https://token2shell.com/x410/)

[https://whitewaterfoundry.com/WLinux/](https://whitewaterfoundry.com/WLinux/)

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER13> Microsoft doesn't need to be pushing their own Android distribution to be successful here. They're building a very compelling set of software that runs atop Android on any device, and this can be done while complying with Google's requirements for having Play services. I wouldn't be surprised if Microsoft's existing relationship with Samsung evolves into something where you can buy a Samsung device through Microsoft that comes preloaded with Microsoft Launcher, SwiftKey, Cortana, Edge, Office, etc while still including Google Play. They could also pursue this with other manufacturers or even with their own devices if they absolutely had to. Microsoft wants to get Android devices integrated with their services, but they don't need to be the app store in order to do that. That strategy is doomed to fail as Amazon already proved with Fire Phone.

<comment><USER14> > Edge

Why would anybody but legacy-encumbered enterprises actually use a web browser by Microsoft nowadays?

> but they don't need to be the app store

But wouldn't it be good if there were more than one fairly-big and well- advertised app store? In fact the situation when there is just one seems worrying, e.g. Apple is already misusing their monopoly on iOS devices actively.

<comment><USER15> > Why would anybody but legacy-encumbered enterprises actually use a web > browser by Microsoft nowadays?

I expect people have various reasons. Personally, my installs of FF/Chrome/Vivaldi are locked down in various ways to not accepts cookies/scripts, so I use Edge for sites that break in my other browsers that I don't need to access often enough to bother whitelisting. Same way I use Safari on macOS.

<comment><USER14> You don't have to disable cookies, there is Vanilla Cookie Manager to delete cookies set by any but whitelisted sites as you close them. You can also use incognito mode (which starts with no extensions enabled by default) - I use it when I have to view a site that gets broken by my ad-blocking and privacy- enforcing extensions set-up. And there actually are so many Chrome-based sites you can always install one more if the number you already have is not enough and you don't like Chrome's built-in user switching. MS browsers have a long history of being not just outdated from the compatibility point of view but also vulnerable to malware so I personally wouldn't trust them. I would actually love to learn there is a real (using a different engine) alternative browser but I feel skeptic about Microsoft building one.

</comment></comment></comment></comment><comment><USER16> Its ironic, since Java and Linux used to be the absolute kryptonite for Microsoft in the 00's

<comment><USER17> The change from Windows server licenses to the cloud (Azure) forced this upon Microsoft.

<comment><USER6> And a majority of Azure runs on Linux, and the major selling points for Windows now is it runs Linux and works with Kubernetes/Docker. Containers still run poorly compared to Linux though and mounting volumes is mostly broken from anything but PowerShell.

<comment><USER18> Do you have a source for the majority of of azure running on Linux? Would be very interested to see this.

<comment><USER19> [https://www.zdnet.com/google-amp/article/linux-now- dominates...](https://www.zdnet.com/google-amp/article/linux-now-dominates- azure/)

"Today, Scott Guthrie, Microsoft's executive vice president of the cloud and enterprise group, said in an interview, "it's about half now, but it varies on the day because a lot of these workloads are elastic, but sometimes slightly over half of Azure VMs are Linux." Microsoft later clarified, "about half Azure VMs are Linux.""

<comment><USER20> So Linux running on Azure, not Azure running on Linux?

</comment></comment></comment></comment></comment></comment><comment><USER21> Cool, don't forged about forced updates, telemetry and the "new version of OS - new device principle"; and M$ will repeat their Windows Phone success!

</comment><comment><USER22> scrcpy : [https://github.com/Genymobile/scrcpy](https://github.com/Genymobile/scrcpy)

This application provides display and control of Android devices connected on USB (or over TCP/IP). It does not require any root access. It works on GNU/Linux, Windows and MacOS.

Did Microsoft have a choice?

[https://www.statista.com/statistics/266136/global-market- sha...](https://www.statista.com/statistics/266136/global-market-share-held- by-smartphone-operating-systems/)

<comment><USER23> This app is amazing. I find myself replying to texts with this quite often. It works well on wifi too :-)

</comment></comment><comment><USER24> First of all, Microsoft gets a cut of every Android phone sold[0].

Secondly, does anyone know why Microsoft quit competing when it came to mobile? It seems something so odd that future history books are going to point it out. I mean I really don't get it. Unless if they are planning to ramp up and go whole hog on Continuum and they don't want to worry about supporting older phones, which this lull allows them to do.

[0]: [https://www.zdnet.com/article/microsoft-is-making-2bn-a- year...](https://www.zdnet.com/article/microsoft-is-making-2bn-a-year-on- android-licensing-five-times-more-than-windows-phone/)

<comment><USER25> The article doesn't explain why the OEMs give Microsoft a cut- do you know why?

<comment><USER26> FAT32 royalties. I would assume this does not apply to Android phones without an SD slot though.

<comment><USER12> Not FAT32, exFAT.

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

</comment></comment></comment></comment><comment><USER27> Here is some hope they extend it.

<comment><USER28> And we know what happens after that. [1]

[1] [https://en.m.wikipedia.org/wiki/Embrace,_extend,_and_extingu...](https://en.m.wikipedia.org/wiki/Embrace,_extend,_and_extinguish)

<comment><USER29> This is not Slashdot circa 2004, posting "OMG, EEE!" is not a substantive reply and for years hasn't reflected how contemporary Microsoft does business. It's just a cheap grab for upvotes with no thinking behind it. Please explain how Microsoft is going to EEE Android, which is run by an equally large and influential company and runs on way more devices than Windows does, or consider removing this comment if you can't.

<comment> jf- Google are an incredibly sinister privately run surveillance system, and are pushing AMP to EEE the web, but you know, MS are still the bad guys, because we're stuck in 2003.

<comment><USER30> > because we're stuck in 2003

It's called learning a lesson (repeatedly). Don't trust Google. And don't trust Microsoft, now or in 2003. Don't trust companies, period. Always have an exit plan and try not to get locked inside their boxes if possible. These companies exist to make money, so power and control is what they want. That doesn't mean we can't appreciate good products or initiatives, just keep in mind that the boot and the giving hand belong to the same entity.

</comment></comment></comment></comment></comment><comment><USER31> Similar to the integration of a linux desktop with kde connect.

</comment><comment><USER32> Does this mean they'll finally stop trying to foist the 'metro' blight onto desktop?

I have a feeling they will double down and it will now be an Android blight

<comment><USER33> 'Metro' is the only design concept Microsoft has come up with in the last decade.

<comment><USER32> Y'know Windows 10 has loads of great little improvements say on Windows 2000.. You only really notice them when u try to use an old machine running 2000 or XP or whatever and theyre not there..

Examples..

can cut/copy and paste files mutiples times and it will queue them up..

When copying files it shows progress + graphs the speed.

Right click on windows button to get list of loads of common management tools (that b4 u had to dig down to in various weird places)

Alt-tab shows little thumbnail of each program running.

thumbnails of image files and whatnot in explorer

loads of option in the explorer GUI for searching and displaying files

powershell

drag window to side to have it take up half the screen

etc. etc.

These are all great useful and non intrusive design ideas. Thats good design. And I reckon they came about from more grassroots action, eg. customer feedback or boots on the ground engineers.

'Design concepts' like Metro are the kind of shit that marketing or upper management come up with as part of some dubious business or marketing scheme, and then are awkwardly and irritatingly foisted upon the engineers and users alike. That kind of BS is utterly regressive.

<comment><USER33> Oh yes, I think Microsoft made incredible strides in the UI/desktop design front from 98 to XP and even on Windows 7 (2009). Windows Phone and Windows 8 introduced Metro to the world, and Microsoft seems to have plateaued there.

<comment><USER32> There are still nice little features like that in 10 from 8.1.. Thankfully the Metro stuff u can all be eliminated with some registry scripts, without affecting anything else, and u now have a nice OS. Just doing it every time I install Windows is a big annoyance.

</comment></comment></comment></comment></comment><comment><USER34> MS already makes billions every year on hundreds of existing Android patents.

I hope they can give themselves a price break.

<comment><USER35> Billions? I a source for that would be nice.

<comment><USER34> This is from 2014 and says they make about $2B per year.

[https://www.zdnet.com/article/310-microsoft-patents-used- in-...](https://www.zdnet.com/article/310-microsoft-patents-used-in-android- licensing-agreements-revealed-by-chinese-gov/)

But later reports suggest they're making a lot less now.

</comment></comment></comment><comment><USER36> At a time when Google is going to disown Android.

</comment><comment><USER37> Linux should have embraced Android as its GUI, as well.

<comment><USER13> Android doesn't really have much similarity to Linux beyond the kernel so this doesn't make much sense. They are 2 quite different userland operating systems.

</comment></comment><comment><USER38> ...and Google plans to replace Android with [https://en.wikipedia.org/wiki/Google_Fuchsia](https://en.wikipedia.org/wiki/Google_Fuchsia) OS in the future, does that makes any sense for Micro$oft, whats their plan?

<comment><USER39> Does google actually plan to do replace android with that, or is it a "you've burnt out on what we hired you for, but letting you leave would give our competitors a leg up so do whatever you want" project? It really feels like the latter.

<comment><USER40> It's a platform for IoT devices. Whether it ends up in consumer handhelds remains to be seen.

<comment><USER41> No, it's not. It's already booting into a desktop like UI on the Pixelbook and they've even ported parts of Chrome to it.

It's more like some universal OS for Google products that'll probably be ready for launch in 2-3 years or so. Sure, IoT may be one of the goals of Fuchsia, but I'm sure it's meant for future phones as a step by step replacement for Android and future Chromebooks, probably starting with Pixel devices or whatever they'll rebrand to next year.

<comment><USER5> Everyone knew Android made technical compromises for market share (eg security model).

It remains to be seen whether business (legacy Android) or technical (new system arch) will win out at Google.

</comment></comment></comment></comment></comment><comment><USER42> Friday nonsense. I can't conceive that MS would yet again hitch themselves to a failing os.

If you want to make money in mobile, you have to prioritize iOS.

<comment><USER43> Android's global market share is 80% and climbing. Android phones are moving up in the market, with many luxury models. Few people switch ecosystems after 1 year or so and guess what will happen when the poor Indian or Chinese dude who used to use Android Cheapo will get a decent job that will allow him to buy a $500+ phone? Only a small percentage of those will get iPhones, most will get Samsungs or high end Huaweis.</comment></comment>


Mozilla launched popcorn.js - alexis-d http://blog.mozilla.com/blog/2011/11/05/popcorn-1-0-launch-and-world-premier-of-one-millionth-tower/

<comment><AUTHOR> _plug_ I'm also working on a video annotating web app. I've followed popcorn.js for a while and was never happy with their direction. I've focused more on having users generate textual comments, timelined to the video. You can demo it at

<http://www.thevaldmans.com/quip>

when the app is more fully featured and less buggy I'll submit it to hackernews. If you are interested in following the progress, email me (firstname.lastname@example.com). Thanks!

<comment><USER2> Cool stuff. Reminds me a bit of how <http://soundcloud.com> does a similar thing with music. Check it out if you haven't, yet. It's a really well done solution IMHO.

<comment><AUTHOR> Thanks! I agree, Soundcloud does have a pretty slick implementation. I've definitely tried to learn from their design. Viddler also has a similar feature, and more related to online video. I think what popcorn.js and these other tools are trying to do is pretty exciting. There's still lots of room for improvement.

</comment></comment></comment><comment><USER3> Why dont't they have their own video use popcorn instead of showing a plain- jane video about how popcorn works in a practical context.

Bad marketing imho.

<comment><USER4> We do... <http://popcornjs.org/>

<comment><USER5> You should probably make an obvious link on the mozillapopcorn.org site to this demo.

</comment></comment></comment><comment><USER6> Direct link: <http://mozillapopcorn.org/>

</comment><comment><USER7> Still did not understand what good it is for. To put tweets and google map on a page?

<comment><USER8> Here's a practical example using Khan Academy's library and Wikipedia articles to teach about the scale of the Solar System with Popcorn.js: <http://vocamus.net/dave/?p=1309>

<comment><USER9> I can't seem to find a link to this in action. I just find two blog posts about it.

<comment><USER10> <https://mozillademos.org/demos/planetarium>

<comment><USER8> That's not actually it. It's a sorta mashup of that, Khan Academy and Wikipedia, facilitated by Popcorn.js

<comment><USER10> Oops! Sorry! :)

</comment></comment></comment></comment></comment></comment><comment><USER11> Can someone explain more about butter.js? On the project page there is no README.

PS: Popcorn looks really good!

<comment> alexis-d From mozillapopcorn.org: "butter.js, an API supporting our Popcorn Maker app and any other apps that use popcorn".

<comment><USER11> Thanks for the reply! Let us hope they document it soon! =)

</comment></comment></comment><comment><USER12> This is a great library for doing product demos. Instead of having a video where someone clicks around your app, just create a voice over and have it actually click the links, drag the items, submit forms, etc. Especially awesome if your app is heavy on javascript (like a GWT application)

</comment><comment><USER13> Here's another example of Popcorn in action. It's used on the people's choice awards website to bring in celebrity content from Freebase synchronized to when the announcers mention them: [http://search.peopleschoice.com/v/26948149/bill-paxton- prese...](http://search.peopleschoice.com/v/26948149/bill-paxton-presents-the- nominees-for-the-22nd-annual-favorite-actress-in-a-motion-picture-people-s- choice-award.htm)

</comment><comment><USER14> The two examples i've seen is pretty good. But I find it extremly annoying when I have to look at two things. You kind of have to pause..

Good to have. But for me not very practical. I think I have to rewatch the video to look at the comments/infos most of the time.

</comment><comment><USER15> I had no idea how far HTML5 multimedia support had progressed until I saw this post. Nice find!

</comment><comment><USER16> mozilla is upto awesome stuff again!</comment>


Time series database Graphite seems to be falling into disfavor - <AUTHOR> https://www.vividcortex.com/blog/2015/11/05/nobody-loves-graphite-anymore/ <comment><USER3> Obligatory response from Graphite contributor and author Jason Dixon who is shouted out in the vividcortex intro.

[http://obfuscurity.com/2015/11/Everybody-Loves- Graphite](http://obfuscurity.com/2015/11/Everybody-Loves-Graphite)

Personal response:

I've used Graphite, OpenTSDB, Ganglia, Cacti, and a bunch more solutions. Recently, work transitioned from OpenTSDB to a hosted solution from a startup called Wavefront.

[https://www.wavefront.com/](https://www.wavefront.com/)

This has been a smash hit.

Scale matters. If you are a small shop, and can workaround the atrocious UI shortcomings of Graphite by all means, go for it. As you start to get larger, OpenTSDB looks attractive. We went too far down that path but were able to quickly (< 3 months) transition over to Wavefront and haven't looked back.

<comment><USER4> A closed silo seems like a distinct step backwards compared to a stack you can maintain yourself.

<comment><USER3> Read a little more into the second part of your sentence, especially the word "maintain."

</comment></comment></comment><comment> chaotic-good I'm building my own time-series database for some time.

[https://github.com/akumuli/Akumuli](https://github.com/akumuli/Akumuli)

It's a standalone solution without dependencies on other services or databases. It can handle more than a million data points per second and uses fixed amount of memory to store data on disk but without Graphite's shortcomings (compression is used for everything and timestamps is stored with nanosecond precision).

I'm focused mostly on realtime time-series analysis. Akumuli has built-in anomaly detector: EWMA, Holt-Winters and sketch based methods. It can generate different time-series representations, like SAX and PAA. DTW and correlation search is in progress now.

</comment><comment><USER5> I've been in search of a good time-series database solution for some time now, and have pretty much given up on it and am in the process of rolling my own: [https://github.com/grisha/timeriver](https://github.com/grisha/timeriver)

My issues with the present state of TS isn't the volume. I was looking for using TS outside of the DevOps world. Everyday things like your heart rate over time, price of gas at the nearest station, number of people in line at your coffee shop, etc. All these are interesting, and Graphite/RRDTool/InfluxDB/etc did not seem like appropriate storage, because to use it with your other data (which is most likely in a relational DB of some kind) you need to export/import it and who wants that.

I call this problem "data seclusion". When data exists in some kind of an incompatible format (e.g. Whisper files), it will end up ignored because of that extra conversion step necessary to link it with your other data. Data in Graphite and such is mostly good for generating charts, but TS analysis is so much more than that, even at its simplest.

I think that the good old relational database is fine storage for TS and we gave up on it way too early, especially given what's new in PostgreSQL. Making it horizontally scalable, distributed, using consensus protocols, etc - <USER2> are not _time series_ problems, these are _database_ problems and we do not yet have a good solution for these. (We have many that "kind of" work, support some features but not others e.g. Cassandra). Projects like InfluxDB are mired in solving the wrong problem which will eventually get solved at the DB level.

More thoughts on the subject: [http://grisha.org/blog/2015/03/28/on-time- series/](http://grisha.org/blog/2015/03/28/on-time-series/) [http://grisha.org/blog/2015/09/23/storing-time-series-in- pos...](http://grisha.org/blog/2015/09/23/storing-time-series-in-postgresql- efficiently/) and [http://grisha.org/blog/2015/05/04/recording-time- series/](http://grisha.org/blog/2015/05/04/recording-time-series/)

<comment><USER6> I highly recommend looking at Keogh's work, particularly the iSAX and iSAX2 stuff: [http://www.cs.ucr.edu/~eamonn/SAX.htm](http://www.cs.ucr.edu/~eamonn/SAX.htm)

While it is used for machine learning, it actually makes a lot of sense to follow a similar approach for more general time series applications.

<comment> chaotic-good SAX requires different type of storage. You can store SAXified time series in ElasticSearch, or Solr but time-series database doesn't fit for this. Time- series databases should be able to generate SAX representation.

<comment><USER6> > You can store SAXified time series in ElasticSearch, or Solr but time-series > database doesn't fit for this.

That's making some presumptions about the time-series database use case. SAX is convenient for storing and retrieving the data as well as identifying trends or recurring behaviour. What more do you need?

<comment> chaotic-good You can't retrieve original time-series data from SAX storage because of normalization. To query time-series data by content (approximate 1-NN, motif discovery, etc) you need inverted index.

<comment><USER6> The normalized data is the index. It can still be pointing to the raw data. The nice thing is that the index organizes the data in a way that makes it easily (lossless) compressible.

<comment> chaotic-good > It can still be pointing to the raw data.

Yep. Each SAX word should be mapped to the list of seriesid:timestamp pairs. This list is often referred as postings list in information retrieval. The resulting data-structure is an inverted index. SAX and iSAX papers describes inverted index variant (really bad one) based on folder structure but one can use convenient IR tools for this.

<comment><USER6> iSAX2 yields a much better inverted index style model.

The thing is, _particularly_ with time series data, a lot of times it is sufficient to at least _start_ with the summary data in the index.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> I actually love Graphite's API. I've yet to find another solution that is as easy to use and has as many available functions ([http://graphite.readthedocs.org/en/latest/functions.html](http://graphite.readthedocs.org/en/latest/functions.html)).

For that reason we still use graphite's API, but not the UI or datastore. Whisper nor whatever the newer one is would survive the load we put on it.

Our setup looks like:

grafana -> graphite-api -> graphite-influxdb -> InfluxDB <\- statsite (C impl of statsd) <\- metrics

<comment><AUTHOR> Is it the case even with the latest Grafana (2.5) that you still get more functionality by running graphite-influxdb as a middleman?

I have Grafana 1.9 pointed directly at InfluxDB 0.8 and here's one thing you _can't_ do: group a series by X, then plot only the top Y groups. Is that the sort of thing that using graphite-influxdb provides?

<comment><USER7> There are a lot of things missing from Influx's query language. The most glaring issue is that you can't do 'multi step math' e.g. you can't do something like 'average series A and series B into 5min buckets then sum them'.

</comment></comment></comment><comment><USER8> What does a modern metrics stack look like? There are so many words... Graphfana, Kibana, StatsD, Graphite, etc. Which bits should I choose and attach together?

<comment><USER9> I've got to advise against Kibana/Elasticsearch until the company gets more mature. I was 100% on board with them up until the redesign.

Not so much for the _design_ (oh look it's white instead of black, who cares), but the way they've handled it subsequently.

The 3.x -> 4.x transition for Kibana left a product that was missing really basic features (like, the ability to set graph colors for one - a bug/feature request that's been open since last january).

As it stands, upgrading from Kibana 3 to Kibana 4 is a step _backwards_. You lose functionality rather than gaining it.

They also decided to require a major version bump to Elasticsearch (to 2.x) with a point release of Kibana.

I used to be super optimistic about the Elastic guys, but some of these decisions are just head-scratchingly awful.

<comment><USER10> After many years of using Splunk at my job, switching to ELK for personal project use was quite a disappointment for me. Of course, ELK is free and Splunk is very expensive, but I was still surprised at the gap.

This might be derailing the thread a bit, but is there any log management platform like ELK or Splunk that has an expressive and versatile query language like Splunk's? My biggest issue with ELK is that analytics is mostly expected to be done through Kibana's GUI, while with Splunk you can craft terse queries to do almost any sort of transformation and visualization imaginable. I don't like how ELK is so GUI-oriented.

<comment><USER11> Not sure what kind of queries you want to do, but Elasticsearch has a fairly extensive Query DSL that'll let you do all sorts of aggregations:

[https://www.elastic.co/guide/en/elasticsearch/reference/curr...](https://www.elastic.co/guide/en/elasticsearch/reference/current/query- dsl.html)

There is a Python implementation that makes creating complex queries pretty easy:

[https://github.com/elastic/elasticsearch-dsl- py](https://github.com/elastic/elasticsearch-dsl-py)

I agree with the criticisms of Kibana, but I have had no problems querying Elasticsearch directly. It also supports scripted queries if the built-in aggregations aren't enough.

Of course, then you have to build your own visualizations with the results...

<comment><USER10> I'm not sure I'd consider that a DSL. It's unwieldy to write a full JSON object for every one-off query I want to do.

Using one of their examples, this:

        {
          "query": {
            "filtered": {
              "query": {
                "bool": {
                  "must": [{"match": {"title": "python"}}],
                  "must_not": [{"match": {"description": "beta"}}]
                }
              },
              "filter": {"term": {"category": "search"}}
            }
          },
          "aggs" : {
            "per_tag": {
              "terms": {"field": "tags"},
              "aggs": {
                "max_lines": {"max": {"field": "lines"}}
              }
            }
          }
        }

would be the following Splunk query:

        title=python description!=beta | stats max(lines) by tags

It would be nice if there was some kind of query compiler that could generate ES JSON from an expressive query language.

<comment><USER12> The linked python dsl does pretty well. Not as nice as your reduced dsl but.

      s = Search(using=client, index="my-index") \
          .filter("term", category="search") \
          .query("match", title="python")   \
          .query(~Q("match", description="beta"))

</comment></comment></comment></comment></comment></comment><comment><USER13> With [http://bosun.org](http://bosun.org) (Stack Overflows alerting system: Expressions, Notification Templates, Historical testing etc) we have hedged our bets by adding in different query functions to the expression language. Currently it can query:

\- OpenTSDB

\- InfluxDB

\- Graphite

\- Elastic (Expects to be populated by logstash)

OpenTSDB was the original time series database so that has some extra UI features compared to others for graphing. My hope is that InfluxDB will mature to the point in availability that we can use it and ditch the hbase dependency. But Currently OpenTSDB is the best option for us.

</comment><comment><USER14> If you prefer running an open-source solution yourself, Prometheus ([http://prometheus.io/](http://prometheus.io/)) addresses exactly those points and works especially well in a dynamic cloud / microservices / container scheduler world.

It has a dimensional data model, a powerful query language to go with it, and covers aspects from instrumentation to storing data, all the way to alerting and dashboarding. The latest version of Grafana has native Prometheus support now too. Many tools (like Kubernetes or etcd) already export Prometheus metrics natively, so you can monitor them with Prometheus right out of the box. Support for many kinds of service discovery (Kubernetes, Marathon, EC2, Consul, ...) make it work very well to monitor dynamically scheduled services as well. Disclaimer: Prometheus author.

<comment><AUTHOR> I chose InfluxDB about a year ago because it was the only option that allowed me to put each individual event into a time series and then do the grouping/counting after the fact. The prometheus docs used to say this it wasn't suited to that use case. Is that still the case?

edit: yup, the prometheus docs indicate InfluxDB is better suited to this use case.

[http://prometheus.io/docs/introduction/comparison/](http://prometheus.io/docs/introduction/comparison/)

Aside, I really appreciate this comparison page and the prometheus docs in general are well done.

<comment><USER14> Yes, Prometheus is fundamentally a store for numeric time series (with a set of dimensions attached), not a store for individual events or log entries.

</comment></comment></comment><comment><USER15> It's buried about 10 paragraphs down, but it should be noted the author is a Graphite competitor.

</comment><comment><USER16> It looks like they (deliberately?) didn't mention the open source projects that were specifically build to address the shortcomings of graphite, like prometheus or opentsdb.

<comment><USER17> The author most likely didn't mention them because they suffer from the same limiting assumptions that graphite does. When you're dealing with multidimensional changing metrics, opentsdb has the same issues graphite does.

<comment><USER16> Graphite's data model doesn't support multidimensional metrics which is in my opinion it's biggest shortcoming. To support multidimensional data, a suitable data model is needed. AFAIK influxdb stores all label dimensions and the value for each data point. No matter how high your cardinality is, the storage requirement is the same. If you need to have, let say, a dimension 'client_ip' in a metrics http_response_time, that's a reasonable model. I'd argue though that outside analytics/data warehousing such high cardinality is rarely needed. That's why prometheus (can't speak for opentsdb) stores the dimensions identifying a metric (metric key/label pairs) once. For all data points it just needs to store the value which makes reading and writing less expensive. Now however VividCortex stores it's metrics, it has to choose from similar trade offs. Sure, they host it for you - still, there are open source project out there addressing exactly those issues.

<comment><USER14> Though I'm a Prometheus author, I need to defend InfluxDB here :) Since 0.9.0, they support tags (vs. fields), which store indexed dimensions similarly to how Prometheus does it. So this argument doesn't count anymore. Still, there are many other differences in scope and functionality between the two systems.

<comment><USER16> So influxdb is now ready to be used as prometheus long time storage?

</comment></comment></comment></comment></comment><comment><USER18> I dunno. It really rocks. And we were so envious that Linux folks have Graphite/StatsD that we've ported it to .NET/Windows: [https://bitbucket.org/aeroclub-it/statsify](https://bitbucket.org/aeroclub- it/statsify)

</comment><comment><USER19> Graphite is ugly. Graphite is hard to use beyond just clicking a few graphs. Graphite requires some hard work to extend. But I am still using Graphite because

1) it is simple to set up!

2) nice to have a fixed-size flat file as database, although performance degrades very quickly. Cache misses is too frequent.

3) over raw socket is also quite attractive

No other solution can compete with Graphite for its simplicity. But there is so much more than just sending data to graphite from collectd, or your custom Python program....

Whenever I see OpenTSDB I sigh. Do we really need H technology here? Yeah I work for a small shop but do I really want to maintain OpenTSDB....when I already have so many databases? I am choosing between Cassandra and PostgreSQL for my TSD.

<comment><USER20> At scales when it starts breaking one doesn't directly consume the metrics. In our setup of over 500K metrics/min, we had scripts consuming app metrics from graphite and pushing them back into a different, higher hierarchy which was then consumed by graphiti/grafana.

The Graphite URL API was visionary, and still makes the cut in most common use-cases.

</comment></comment><comment><USER6> Live by the sword, die by the sword.

It is kind of amazing how hard it is for existing time series database systems to track the changing needs of the marketplace.

<comment><USER21> You mean for open source time series database systems run entirely by volunteers in their spare (personal) time? I know, right? What jerks.

<comment><USER6> What? I'm not saying they are jerks. I'm pointing out that it is harder for existing projects to track the changes in the market place. It is _hard_ for a new open source project to launch and build up enough of a community to be viable.

</comment></comment></comment><comment><USER22> Can some one change heading so it is understood as software and not actual Graphite

<comment><USER23> Ok, we changed the title to use representative language from the article.

Btw, this article was heavily flagged. It's not really legit to flag a story just because people don't like the title. Plenty of good stories have problematic titles. Depriving others of a chance to read the content, especially when there's a good discussion going on in the thread, is a bad use of flagging power.

<comment><USER24> I didn't flag it, but perhaps others did because the author is a Graphite competitor, yet this isn't disclosed until the end.

<comment><USER25> It's not like this is a Medium post or something, it's on the company blog.

</comment></comment></comment></comment><comment><USER26> Here I was thinking I would read some informative article on graphite, graphene and related carbon derivatives. Dear programmers: pick better names.

<comment><USER27> Naming is a hard problem in computer science :)

<comment><USER28> Like they say, the two fundamentally difficult problems in CS are cache invalidation, naming things, and off by one errors.</comment></comment></comment>


A spammy security flaw in JIRA Service - <AUTHOR> http://qz.com/679209/corporate-developers-beware-theres-a-spammy-security-flaw-in-jira-service-desk/ <comment><USER2> articles written like this (just like, as if a layer of snark was laid on top, and how they NEED to have a bad guy) really bother me

and also omg JIRA GOT HACKED! yeah, by who? a guy who wanted feedback on a kickstarter? no there was nothing to do with any "hacks"

And just so keen to blame JIRA etc, when it could be easily the fault of the single service desk that has this issue</comment>