Macintosh Forks - <AUTHOR> https://mondaynote.com/apple-macintosh-forks-1804c24db29f <comment><USER2> I still don't think it's happening any time soon:

1\. Much like during the PPC-to-X86 transition, Apple will need to emulate Intel x86-64 on ARM64 at reasonable speed so that legacy software will continue to function. But we haven't seen any such technology yet. (That's not to say it's impossible, just not in view at this time.)

2\. Developers will instantly lose their ability to virtualize x86-64 hardware. No more Docker, no more Windows virtualization. A lot of people, particularly developers, who use the Mac today will lose significant functionality.

3\. Thunderbolt is an Intel technology and only works with the x86-64 architecture. Apple will have to come up with some viable replacement for it.

<comment><USER3> 1\. Speed is not all that important, as long as the software remains usable for the time it takes for the developer to recompile (in most cases) or move over their software to be fully ARM compatible. This will not take long, since Apple users are notorious complainers and developers in the Apple ecosystem used to moving quickly.

x86 emulation is already close to a proven technology. Even though it hasn't reached real adoption yet because there is no open source version, there are some commercial offerings for Linux. Microsoft has x86 emulation built into the ARM version of Windows. I have no doubt that Apple could build a version of this as well (they probably already have).

2\. With x86 emulation this point is mostly moot, although it will be slower. But then again Windows is also becoming ARM compatible.

3\. Thunderbolt 3 is not Intel-exclusive. It does not only work with the x86-64 architecture. It's an open standard.

<comment><USER2> Windows only supports 32-bit x86 apps on ARM. Apple started deprecating 32-bit x86 apps on MacOS years ago; and MacOS Catalina (10.15) won't even run them anymore.

</comment></comment></comment><comment><USER4> This is not happening any time soon and the article is junk. Previous transitions (68K->PPC->x86) occurred when the successor CPU's were so stupidly more powerful than what they replaced that emulation was a plausible tactic.

This is NOT the case with x86->ARM. Apple's ARM chips are impressive and are approaching Intel's chip in some areas if you benchmark in certain ways and ignore the areas where they fall short. I think people underestimate the gap. Maybe one day ARM while be fast enough to make switching worthwhile and emulate x86 acceptably, but it is not this day.

I would say it is more likely that Apple will end up releasing some sort of cross-CPU .NET/JavaVM-esque technology that compiles software locally if they really want to merge the product lines. But I am not even convinced that Apple wants to merge the two lines.

</comment><comment><USER5> I thought this article would be about this.

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

</comment><comment><USER6> You have to wonder if you can eg get a cheap enough AMD chip that you stick an Apple Axx and an AMD laptop chip in the low-end laptops to manage the transition.

<comment><USER7> I'm thinking Apple will drop a couple x64 cores into an Ax chip. Maybe they license from AMD.

Probably impossible, but I wonder if something clever could be done at the microcode level (mostly) so that a core could switch instruction sets. The Apple ARM instruction set would be the native, optimized one, but the x64 IS would run acceptably.

</comment></comment><comment><USER8> At this point is seems more likely we'll get an iPadOS laptop aimed at the non-pro market and macOS will become a pro-only system.

<comment><USER9> What is the difference between an iPadOS laptop and an iPad with a keyboard- case?

<comment><USER10> This may sound crazy to some people but I still prefer a sturdy built in keyboard and hinge

<comment><USER3> This may sound crazy, but I love my Surface Pro 4 clone.

It has the same specs of a good laptop, the type cover is sturdy (but easily replaceable in the worst case), removable for tablet use and the screen doesn't wobble a bit.

I consider it a lot more flexible (and studry, since there is no hinge to break) than a traditional laptop.

Yes, the screen could be larger.

<comment><USER11> Doesn't sound crazy to me…the Surface Pro (3) is the first non-Apple laptop I've owned that I actually like enough to avoid using since…well, I suppose the Compaq Portable II isn't a laptop, so, ever. And the closest I've come to using it in "tablet mode" is to pop off the keyboard[1] to save space when using the Surface to calibrate my desktop display.

The type cover is not only "good enough" for all but full-time use, it's also upgradeable — which I've taken advantage of — and easily replaceable in the case of damage.

As for the screen size, I agree in part…but if it were any bigger, it wouldn't fit perfectly in the back of my camera bag, which, for my purposes, is a significant benefit.

This coming from someone with a mechanical keyboard, two pointing devices (Magic Trackpad and wired, many-buttoned mouse), and a 55" 4K display on his desk.

[1] And using the Microsoft Bluetooth folder…also a surprisingly usable device given the limitations inherent in its design…as a temporary alternative.

</comment></comment></comment></comment></comment><comment><USER12> The author implies that missing a touch bar was _a bad thing_... What?

<comment><USER13> The relevant quote: "[...] Last year, the Air was finally upgraded to a much- needed higher definition Retina display and Touch ID access module, and was updated again with display and processor tweaks; and all Pros now have a Touch Bar.

So Mac laptops just got simpler and saner. [...]"

I would guess the analogy of "simpler and saner" would be streamlined, more homogeneous.

The term "fork" is also misleading. All what is needed is once more universal/fat binaries which work on both architectures. macOS cannot be forked in the traditional FOSS sense; there are too many proprietary components for that.

A little of history on the author, Jean-Louis Gassée, can be found here on Wikipedia [1]

[1] [https://en.wikipedia.org/wiki/Jean- Louis_Gass%C3%A9e](https://en.wikipedia.org/wiki/Jean-Louis_Gass%C3%A9e)

<comment><USER14> "The term "fork" is also misleading. All what is needed is once more universal/fat binaries which work on both architectures. macOS cannot be forked in the traditional FOSS sense; there are too many proprietary components for that."

This has a double meaning, because the original "fat binaries" used the resource and data "forks" to store the difference versions. In fact, I thought you had misunderstood until I checked the article.</comment></comment></comment>


How a 25-Year-Old Investor Spurred Lumber Liquidators' Plunge - <AUTHOR> http://www.bloomberg.com/news/articles/2015-03-04/how-a-25-year-old-investor-spurred-lumber-liquidators-plunge <comment><USER2> This is sort of off topic, but I'm right in the middle of ripping up floors from Lumber Liquidators that I put down a few years ago- parts that are at the center of this cluster fuck.

My whole family has been struggling with health issues that coincide with when I put these floors down. I have a Chihuahua that has developed terrible sinus problems, my 6 year old son is having sinus and cough issues and my wife has breathing problem in our home.

I'm not 100% sure it's from these floors and/or the glue I bought from them, but it's a fact our health tanked a few months after the floors went down. We've been struggling to find a cause that makes sense and this seem to be the only plausible thing.

I guess in a couple months I'll know for sure assuming our health improves. If it turns out to be the case, I will be extremely grateful to this blogger. I don't care if he made money, this information could be helping my family's health.

<comment><USER3> Terrifying/sad/fascinating story. Did you ever take an extended holiday over that time and notice general improvements to your health?

<comment><USER2> Yes. My Chihuahua has seen the best improvements after being out of our home for a week while we went on vacation- we also felt better too.

I assumed we had a mold problem, but those test recently came up negative.

I should note I have the least issues, but I spend the least amount of time at home.

<comment><USER4> Keep some of the floor. You may want to one day have it tested for formaldehyde levels.

</comment></comment></comment></comment><comment><USER5> The idea of private citizens both being able to investigate companies for wrong doing and earn income for their work appeals to me. No lawsuit, no legal process. After doing some investigations, just some quick transactions on a trading account, and a blog post later.

<comment><USER6> Yeah this is pretty great. Good work and good result. My only caveat would be unscrupulous people spreading unfounded rumors or uninformed opinions passing as fact which could result in innocent companies suffering from lack or rigor on the did of citizen investigators. At least it appears sixty minutes did son of their own investigation --althouh I imagine they went in with guilt in mind, which worked out in this case, but can result in different outcomes in other cases.

<comment><USER7> From The Fine Article:

" _When Zhou began looking into the Toano, Virginia-based company back in 2013, he says he found online complaints about its Chinese-made flooring. So he bought products from Lumber Liquidators and paid to have them analyzed. The results led him to publish a post on investing website Seeking Alpha on June 20, 2013, that advocated shorting the stock because the tests showed levels of formaldehyde above California requirements._ "

So while others might indeed lie, we seem to have enough confirmation from the subsequent investigations that Zhou did not. And there was no reason to believe he lied, this is a target rich environment after all.

And while _60 Minutes_ is entirely untrustworthy (I've watched them lying on the air for decades, since the '70s), likely would have started with "guilt in mind", in this case they chose a worthy target.

<comment><USER8> _And while 60 Minutes is entirely untrustworthy ..._

Wait, what? Any proof for that statement? How come they are still on air? Why wasn't their parent broadcaster sued out of existence, if what you claim is true?

<comment><USER9> Benghazi coverage, the Bush National Guard story coverage, their NSA/Snowden fluff piece, etc. It's not hard to find credible criticism of 60 Minutes, even if you can't tell just by watching it.

[http://www.cjr.org/behind_the_news/60_minutes_bad_run.php](http://www.cjr.org/behind_the_news/60_minutes_bad_run.php)

<comment><USER10> Lara Logan was suspended from the show for months after airing her report, and the show issued an on air retraction and apology about that story after it broke that the main person they interviewed for the piece was lying.

</comment></comment></comment></comment></comment></comment><comment><USER11> The original article that Zhou published on Seeking Alpha outlining reasons for going short against LL is available here:

[http://seekingalpha.com/article/1513142-illegal-products- cou...](http://seekingalpha.com/article/1513142-illegal-products-could-spell- big-trouble-at-lumber-liquidators)

The lab report of the analysis carried out:

[https://app.box.com/s/mhzih9apu2q2gdeuty8i](https://app.box.com/s/mhzih9apu2q2gdeuty8i)

<comment><USER12> Some background on the CA law: [http://greensource.construction.com/news/080107CARB.asp](http://greensource.construction.com/news/080107CARB.asp)

"The new CARB rule sets thresholds for emissions of formaldehyde from various panel products that take effect in two phases between 2009 and 2012 (see chart). It is difficult to compare these limits with their counterparts in Europe and Japan due to the differences in testing protocols. The phase-one targets are designed to establish a reasonable baseline based on today's common practice, while curtailing low-cost, high-emitting, imported products. Phase two, on the other hand, is intended to force manufacturers to shift to advanced and emerging technologies. CARB officials tout the fact that, once fully implemented, its formaldehyde emission limits will be the tightest in the world. Products sold for use in manufactured homes are exempted from these new requirements because state law cannot supersede federal rules in this area."

</comment></comment><comment><USER13> This is basically describing a much smaller scale version, with much lower stakes, of what Bill Ackman has been trying to do to Herbalife for the past couple years. He even placed a bet against Carl Icahn ([https://www.youtube.com/watch?v=hCZRk1lL90Q](https://www.youtube.com/watch?v=hCZRk1lL90Q)), and they've traded "winnings" and "losings" in the hundreds of millions over the past two years.

<comment><USER14> This is what a lot of activist hedge funds do in general.

</comment></comment><comment><USER15> The amount of products that use formaldehyde somewhere in the process is staggering. From glues used for wood (floors) to fabric softening (carpets, baby clothes), inks, building materials.

This is a much bigger deal if you live in a "energy efficient" home that has very little heat/cold leakage. Modern insulation, fancy windows, HVACs that recycle indoor air contribute to this problem. Some of these products like floors will be off gassing for years while you live in the hermetic bubble of your home.

Source: my wife worked for a niche material company that was a big importer of bamboo wood. They sold everything from bamboo floors to plywood.

They generally tried to not use formaldehyde glues and bonding agents but it's hard to to police it. Their suppliers from China would cut corners or try to boost their profits. When caught they would stop for a while and then resume later on.

<comment><USER15> I had neighbors who wanted to make sure when the hallway was being painted they only used low VOC paint. They were somewhat offended when I told them the carpet they put uses a bonding agent that will off gas for years or they their children clothes were softened with formaldehyde.

</comment></comment><comment><USER16> Is it legal and ethical to deeply research a firm until you find very serious problems, then short their stock, then announce your findings?

It feels... OK to me. For some reason this strikes me as a surprising way to make money. Never heard of this before now.

<comment><USER17> It's not only ethical, it's about the only reason short selling hasn't been outlawed.

<comment><USER16> Doesn't shorting also help stabilize the value of a security?

</comment></comment></comment><comment><USER18> Now look around you at the 1000 products that construct and are in your home that are made in China.

We even import some food from China.

Your car tires are probably made in China.

Think all those things meet US regulations? Who is going to inspect them, the handful of people that are responsible for tens of thousands of freight containers per day?

<comment><USER19> Yes, most of those things do meet US regulations. The company inspecting them is the large US company that puts its brand on it. The same company that would be on the receiving end of a huge lawsuit if the products are dangerous.

</comment></comment><comment><USER20> Engines like this one can help uncover these hidden relationships: [http://cymetica.com](http://cymetica.com)

<comment><USER21> > AAPL - hidden connections to AAPL: mac, ipod, digital, store, ios, apple, > itune, music, ipad, iphone, video, icloud, acquired, touch, third-party, > portable, photo, os, download, app, mobile, file, pro, consumer-oriented, > peripheral, windows-based, player, iwork, online, compatible, display

Yeah, really hidden relationships.</comment></comment>


Google AdWords Lightbox ads now available across all screens - <AUTHOR> http://adwords.blogspot.com/2014/12/making-mobile-easier-lightbox-ads-now.html <comment><USER2> >Lightbox ads are great at driving brand consideration because they're billed on a cost-per-engagement (CPE) basis. This helps your digital display dollars go further because your brand's experience automatically finds a qualified audience -- and you don't pay if people don't expand and engage with the creative experience.

Pretty nifty! Supports standard IAB sizes too, so you won't have to re-jigger your creative too much</comment>


World's first 'Ion Plane' has no propellers, turbines or fuel pumps - <AUTHOR> https://www.newsweek.com/worlds-first-ion-drive-plane-no-moving-parts-created-mit-scientists-1227260 <comment><USER2> Extensive discussion: [https://news.ycombinator.com/item?id=18503772](https://news.ycombinator.com/item?id=18503772)</comment>


A JavaScript Module Manager That Fits in a Tweet - <AUTHOR> http://bfontaine.net/blog/2015/10/29/a-javascript-modules-manager-that-fits-in-a-tweet/ <comment><USER2> The magic with these module systems isn't in the namespacing, that's just formalizing new scope creation via IIFE's and "exporting" symbols from that new scope to a variable on the outer scope. Big whoop; make an IIFE and return something from the function, there's your "export". Code golfing your module spec implementation is a fun exercise, though, I don't begrudge anyone for having fun.

No, the magic in JavaScript land right now is being able to take the CommonJS, AMD, or ES6 module spec and have that be the basis for JavaScript _bundling_ and _source code transformation_. Systems like Webpack and Browserify can perform these important functions. The magic is the plugin ecosystems that assemble around your modules to form your software project's build, test, and runtime systems.

The magic is that your JavaScript modules can be isomorphic and bundled to be delivered to and run identically on the web browser just the same as it can run on a Node.JS container. The magic is that IDE's now can grok these module specs and construct a type library - essentially treating the loosey goosey JavaScript language like it had static types. Employing JSDoc comments across your entire codebase is how you give hints to the IDE about parameter types, what can be nullable or optional, etc. You can essentially rig up a statically typed language out of modules and JSDoc comments in modern IDE's like IntelliJ/WebStorm.

JavaScript ES3/ES5 is a crappy toy language, ES6/ES2015 is somewhat less crappy, but still backwards crappatible. It's these modern tools and libraries that all agree on what constitutes a module that make JavaScript a joy to work with and very, very productive.

</comment><comment><USER3> I appreciated the minification walk-through more than actually having a tweet solid package manager. Before you get to the range of code golf, less code means less bugs.

<comment><USER4> "less code means less bugs"

That really depends on how you make less code. Transforming an if condition in a ternary operator could make the code much harder maintain, therefore bring more bugs. This is one example from several cases.

Sometimes a longer code means a code more readable.

<comment><USER5> Really?

I like the ternary operator more than if, but only because if is a statement in JavaScript.

<comment><USER6> [https://github.com/mbostock/d3/blob/master/src/selection/htm...](https://github.com/mbostock/d3/blob/master/src/selection/html.js) I had to look this over the other day, I found it nearly unreadable.

<comment><USER7> The problem with that code is partly the overuse of the ternary operator, but even more it's the wildly inappropriate code formatting and structure. Code that looks like this would be a WTF no matter what operators or statements it uses.

Judicious, simple, and straightforward use of the ternary operator looks nothing like that.

<comment><USER6> The craziest part to me is if you look at the history of that file, that is the ONLY commit on that file ever. How does one write that the first time, and never have to touch it again!?

</comment></comment></comment></comment></comment></comment><comment><USER8> Similar to this 22 line require.js replacement: [https://gist.github.com/paton/ab27a1be7e843d220ee3](https://gist.github.com/paton/ab27a1be7e843d220ee3)

We use this in our production apps.

</comment><comment><USER9> Similar to a namespace package I've been using for 6 years.

[https://github.com/mckoss/namespace](https://github.com/mckoss/namespace)

</comment><comment><USER10> Made me think of [https://github.com/testdouble/defuse](https://github.com/testdouble/defuse).

</comment><comment><USER11> you know what else is a good package manager?

var object = { thing: {}, otherthing: function() { console.log("I need", this.thing): } };

Just minify all your code into one file people!</comment>


College is a waste of time - <AUTHOR> http://www.cnn.com/2011/OPINION/06/03/stephens.college/index.html?hpt=op_t1

<comment><USER2> This was posted yesterday: <http://news.ycombinator.com/item?id=2617379></comment>


Startup Camp SF 2008 (May 4-5, 2008) - <AUTHOR> http://www.startupcamp.org/sc5sanfran_register.html

<comment><AUTHOR> Who's up for an HN dinner afterwards?</comment>


Ask HN: What's your dev environment setup look like? - <AUTHOR> I know this has been discussed a lot, but things change rapidly. I currently use a combination of Vagrant + local services, that I manually run when required. Some other people in the team use Docker, that I personally haven't touched for quite a while. I'm looking to standardize the dev setup in our organization and curious what are the best practices in 2017. There are a few goals I pursue:
- an easy way to spin up the entire infrastructure locally (say for new hires);
- an easy way to share new services with the team;
- the environment should mimic staging/production as much as possible.
I'm leaning towards a Vagrant VM + Docker containers inside of it. In this case we can share a single Vagrantfile across the team, which to me solves the first two goals. Running multiple containers in the VM solves the third goal.
I sometimes hear that Vagrant is a useless layer in this setup. But I'm not sure.
Are there some best practices today? What's your setup looks like?
P.S. We use Chef to manage non-local environments. Could be nice to have a single tool for all environments (local, staging, prod, etc.), but I'm not a dev-ops, not sure if that's a handy practice. <comment><USER2> > \- an easy way to spin up the entire infrastructure locally (say for new > hires);

DEB/RPM packages, along with the source packages (they make preparing the OS for development easier).

> \- an easy way to share new services with the team;

DEB/RPM packages.

> \- the environment should mimic staging/production as much as possible.

DEB/RPM packages, inside a container or VM that runs the same OS as on servers.

Don't make your environment overly complicated. You can safely use tools that are on the market for dozen years, they haven't aged.

<comment><AUTHOR> Interesting. So the idea is to package all the internal services/github repositories/etc and then share it all via internal PPA repo?

<comment><USER2> Something like that.

Building RPM and DEB packages is quite easy and very robust if you have sane build system and don't download random things from the internets during the build.

If you do download things, you need to invest some time into packaging them (maybe into one large bundle, if you managed to create a fractal of dependencies; such packages are atrocious if you'd want to publish them, but are OK if used internally), so you never ever hit the network during building the package. This gives several benefits, such as control over what is actually installed, resistance to software disappearing from repositories, or installation process that is repeatable (dependencies don't change their version magically between two installations).

The resulting packages are very fast to install (you don't recompile modules on every single deployment and you don't need to install compilers, which can be heavy) and can pull other OS packages with necessary software. Even development process can gain a little, because you have a canonical place for build-time dependencies, so setting up a workstation for developing a service is easier.

<comment><AUTHOR> Say I have a new hire, from my understanding, setting up his environment would come down to `add-apt-repository company-repo`, and then `sudo apt-get install company-infra`. Does that sound about right?

I guess in this case I would have to keep services running on local ports of a VM?</comment></comment></comment></comment>


Indonesia 737 Max Final Report Blames Boeing Design and FAA Cert - <AUTHOR> https://www.seattletimes.com/business/boeing-aerospace/indonesias-investigation-of-lion-air-737-max-crash-faults-boeing-design-and-faa-certification-as-well-as-airlines-maintenance-and-pilot-errors/ <comment><USER2> The report does a masterful job of obscuring the fact that flying a 737 Max at low altitude and full throttle will create an overspeed condition.

The overspeed condition was the proximate cause of the accident because it increased aerodynamic forces on the horizontal stabilizer that prevented the crew from manually overcoming the AND (aircraft nose-down) trim applied by the MCAS and also resulted in a terminal dive.

Turns out that it's hard to build an aircraft that is resistant to abuse by pilots with grossly inadequate flying skills.

Maybe Boeing should have taken the Airbus approach and have three independent flight computers vote on whether the pilot is an idiot. Oh, no, wait! They keep managing to crash those as well.

<comment><USER3> > Turns out that it's hard to build an aircraft that is resistant to abuse by > pilots with grossly inadequate flying skills.

This red herring has been thoroughly refuted and discredited. It saddens me how some people keep parroting this nonsense hoping to brush off Boeing's gross negligence, specially when they resort to thinly veiled racism.

<comment><USER2> Facts, not nonsense. Buried in the final report, but there for all to see if you read it carefully.

Not racism. Air France 447 came to grief by the exact same process. It wasn't a Boeing and it was flown by equally incompetent white men.

Likely Russian assets discrediting the second largest US defence contractor by fostering the torches-and-pitchforks motif among the ignorant.

There is no room for opinion here. If you do not understand the aerodynamics of this accident, you have no right or proper place in commenting.

And if anything, it's sexism, not racism. Men designed a system that values money over all else. That system put ill-trained male pilots in the cockpit without the flying skills to manage a simple runaway trim situation. It actively excluded women for the same reason: it was built to entrench male wealth.

<comment><USER4> This reads like some GPT-2 generated monstrosity to be quite honest, and can't even stick with a cohesive message throughout its entirety.

There's also more than a few contradictory sections. If you're trying to send a message, it's not succeeding.

>There is no room for opinion here. If you do not understand the aerodynamics of this accident, you have no right or proper place in commenting.

Furthermore, stow the elitism. No one got to a place of expertise without first being able to participate in the fundamental exchange of ideas. Something you're currently having some difficulty in doing.</comment></comment></comment></comment>


What are you looking for in your next employer (except money)? - <AUTHOR> Here are mine thoughts: - Full-time position, It gives me more security as a result more chances to introduce initiatives, discuss openly problems and express non-standard solutions for current problems; - Long run collaboration, I'm getting attached to the people I work with, know their skills and passions, as result I know where to go and what to ask to resolve product/project needs faster. - Professional growth, It's not a formal change of the job title every couple years, but a possibility to have trainings, visiting conferences and exhibitions to gain more knowledge that can improve efficiency or quality of my work; - Having work tools, To perform a job to the best of my ability, I need to have access (licenses) to programs, tools. Collecting the data, testing to evaluate my decisions can improve the accuracy of my work. - Matching donations, last but not least, I donate to support my community and resolve pressing issues, in this way I express what is matters for me, and I would be happy if the company shares these values by matching my donations to have a bigger impact.<p>What are you looking in your next employer? <comment><USER2> Low administrative overhead. When I left my last employer earlier this year, HR had moved to monthly mandatory training sessions that were the kind of stuff that HR usually comes up with. They also added in a requirement for monthly written "check-ins" between every employee and their manager, accessible of course by HR. I talked to my manager several times a week, and sometime multiple times a day, so a monthly "check-in" was of no value to either of us but no one has the spine to stand up the HR departments anymore and many of them are running amuck with their greatest fantasies of how HR centric companies should be operated. With 30,000 employees, I can't imagine how much money and productivity is being spent on all of the HR imposed overhead.</comment>


Show HN: Stand App – Make standing up a habit - <AUTHOR> https://getstandapp.com

<comment><USER2> The problem with this app is that I probably stood up to get something from the kitchen or to walk over to a officemate after the last time the app reminded me to stand up. Since it has no way of knowing (I assume) about these "unscheduled" standups, it will sometimes remind me to stand up right after I've sat down.

What is needed is an accelerometer or maybe another type of sensor (barometer?) mounted on my body (or perhaps a pressure sensor integrated into my chair) so that the app can learn about all the times I've stood up and sat down without my tediously needing to tell it about them.

Am I correct in assuming that the app has no way of knowing about my standups and my sitdowns except by my explicitly telling it about them via at least one key press or mouse click?

</comment><comment><USER3> Love the UI....any chance there's a Windows version?

<comment><AUTHOR> Hey! No Windows version unfortunately.</comment></comment>


Unlambda - <AUTHOR> http://en.wikipedia.org/wiki/Unlambda

<comment><USER2> Although it's not human-readable [1], the simplicity of the language makes it appealing for teaching courses on Turing machines.

Sometimes the students get lost in all the tapes, read/write operations, and digits.

Ok, after a little more thought this might get them just as lost, but teaching beginner CS students from a functional foundation instead of a procedural one just seems appealing to me.

[1] v is defined as ```s``k``sii``s``s`ksk`k``siik

<comment><USER3> I keep seeing Unlambda (and co.) in literature here and there. It's sort of surprising to see an esolang show up in computer science theory. It's fitting at the same time. I was on the mailing list, and I can tell you the people who come up with these are incredibly brilliant—even when they're producing nonsense languages or incomprehensible ones with little if any research value, it's the product of a greater than average insight trying to construct a Dalí or an Escher in computational terms.

(Needless to say, I wasn't one of the greats. I was mostly there to pester everyone and generally be a nuisance. I've learned a lot from that experience and you can probably tell I'm grateful for it. Most importantly, I'd learned to think differently, that there's always another computational model just outside of peripheral vision.)

</comment></comment><comment><USER4> We wrote an Unlambda interpreter in JS. You could play with it at <http://repl.it/#:languages> under Esoteric. Also try the examples ("eg" button top right corner).</comment>


Cutest robotic kitten that I've ever seen goes viral - <AUTHOR> https://www.indiegogo.com/projects/nybble-world-s-cutest-open-source-robotic-kitten#/ <comment><USER2> This looks awesome, and I'm really happy that the inventor is getting funding for this and bringing it to market. Some of you may remember this from the arduino website when it was called OpenCat: [https://create.arduino.cc/projecthub/petoi/opencat-845129](https://create.arduino.cc/projecthub/petoi/opencat-845129)

</comment><comment><USER3> never mind that. Just figure out a way to stop a real kitten defecating on your sofa.</comment>


H-1B Visa Fee Rise 'Highly Discriminatory' to Indians - <AUTHOR> http://blogs.wsj.com/indiarealtime/2015/12/29/h-1b-visa-fee-rise-highly-discriminatory-to-indians/ <comment><AUTHOR> I personally like the terms of the hike (applies to firms with over 50 employees and more than half of them h1bs) Those outsourcing firms have given h1bs a bad name and muddied the waters for the folks being paid well and doing amazing work at amazing companies.

</comment><comment><USER2> Typical piece from the Wall Street Journal which appeals to managers and not technical workers.

H-1B users should be forced to pay true market rates for the position they are hired for in addition to an administration fee. This will ensure that local talent is hired first, and H-1B's are only used as a last resort.

Also, "upskilling" by companies needs to be managed better than it is at most companies as it is a waste to hire someone who is overqualified for a position. When the market turns, these overqualified people will leave for greener pastures.</comment>


Snow Leopard Ruby Development Environment Checklist/Gotchas - <AUTHOR> http://www.ricroberts.com/articles/2009/09/04/snow-leopard-ruby-development-environment-checklist-gotchas <comment><USER2> Here is a gist that's been thoroughly tweaked. It worked great for me: <http://gist.github.com/177368>.

</comment><comment><USER3> Do I need to manually uninstall things like mysql, apache, and imagemagick before installing the 64-bit versions?

<comment><USER4> If you installed imagemagick with macports you might have to...

You _should_ be able to force macports to update everything, but it didn't actually work for me or for others that I know of. The problem seems to be with a bunch of libraries that are installed with imagemagick. I did a 'sudo rm -rf /opt/local/' and reinstalled macports and all that from scratch and everything was good to go.

</comment></comment><comment><USER5> Are these issues primarily on 64bit machines, of which my Macbook Pro isn't one?</comment>


(At Least) A Commit a Day for 30 Days - <AUTHOR> http://blog.0x1a.us/a-commit-a-day-for-30-days/

<comment><USER2> > I have the habbit of pushing small commits that tend to border along > meaningless. A perfect example of this would be fixing a typo in a README > and commiting/pushing instead of waiting to commit/push with another change. > I asked myself if I was pushing these commits to meet the daily quota, but > this has been a habit of mine since I first picked up git, a habit I've > found somewhat hard to break.

I always thought the more granular your commits, the more useful they are. Why would you want to lump a README change with other unrelated updates, especially if it means you need to leave your repo dirty and unpushed until you do something more "significant"?</comment>


US slams Australia's on-shore cloud fixation - <AUTHOR> http://delimiter.com.au/2012/04/13/us-slams-australias-on-shore-cloud-fixation/

<comment><AUTHOR> With all the US laws about seizing data and the warnings from industry, what did they expect?

The government of Canada cannot legally use US cloud services either without violating their privacy laws. It is only prudent.

Industry warned them and they went ahead and enacted those laws. Now they whine about the predictable results?

<comment><USER2> Why would they not want free backups at the NSA? Pay nothing, file a FOIA request for a restore, then wait 50 years.

Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies. - Linus Torvalds

<comment><USER3> Since when have FOIA requests to the NSA ever produced anything interesting within 50 years?

<comment><USER4> Here you go: [http://courses.csail.mit.edu/6.857/2012/files/H03-Cryptosyst...](http://courses.csail.mit.edu/6.857/2012/files/H03-Cryptosystem- proposed-by-Nash.pdf)

<comment><USER3> I am well aware of that, having created a transcript ( <http://www.gwern.net/docs/1955-nash> ) of it. A cryptosystem that the NSA rejected because it was too easily broken is obviously not in the same category of information as what I was responding to.

</comment></comment></comment></comment></comment><comment><USER5> I would guess that the _primary_ reason Australian organizations prefer hosting locally is performance. Australia is really far from the US and even further from Europe. Most of Australia's population is clustered in east coastal cities, so it makes sense to host the data and services there too.

Why would anyone choose to add 200ms+ to every network call if there's an option to host data and services locally? Not to mention the bandwidth costs associated with moving bits across the Pacific.

<comment><USER6> Even without the latency (which is significant), there are two more technical issues:

1\. Australia has pretty limited data pipes to the outside, so the more traffic is kept in-country the cheaper it is and the less likely there will be issues with world-traveling traffic

2\. Aus ISPs have pretty low quotas for international traffic (40-200GB range I believe) but none for national traffic[0], which also lead those same ISPs to build or help building massive national caches of international resources (I believe Steam download traffic, for instance, is kept mostly or solely national)

[0] I may be wrong, and please correct me if I am. That's what I recall from past conversations on the subject

<comment><USER7> I never had any different caps for international vs local data traffic.

<comment><USER8> Many of the smaller ISPs (of which there are now not many) and some of the larger ISPs have peering agreements (with PIPE networks) which mean that this traffic is effectively "free". It used to be quite the selling point, but appears to be no longer be the case (possibly because it's a bit iffy as to what is and isn't free).

</comment></comment></comment></comment><comment><USER9> Hilarious. I think the Australian government is quite right in advocating against using US hosting where government or personal data privacy is a key requirement. If the cloud providers want the business so much, build some local infrastructure.

This hesitance to use US infrastructure due to US legislation such as the Patriot Act is only going to grow. This is an opportunity for cloud providers in regions with a good mix of infrastructure and data protection policies.

<comment><USER10> > _"the Australian government is quite right in advocating against using US > hosting"_

It's not the Australian government, it's only the Victoria Privacy Commissioner. The article is a beat up.

<comment><USER11> It is the Australian government:

"Agencies should note it may also be possible for foreign governments to access information held in their jurisdiction or to access information held in Australia by any company with a presence in their jurisdiction.

For instance, the USA PATRIOT Act 2001 contains provisions allowing the US Government to access information in specified circumstances, (i.e. cases involving suspected terrorism or threats to national security) irrespective of the geographical location and, without necessarily advising the agency."

[http://agimo.govspace.gov.au/files/2012/02/Cloud-Privacy- Bet...](http://agimo.govspace.gov.au/files/2012/02/Cloud-Privacy-Better- Practice-Guide-FINAL.pdf)

Note also the second part of the first sentence - I have been told explicitly that we will never be allowed to use Amazon AWS for private information (public websites like data.gov.au already use AWS but have no private areas) even if there were physical datacenters in Australia because their US staff could be coerced under the Patriot Act to access that information and in that case would be ordered to circumvent any logging/audit trails to do so.

<comment><USER10> Yes your quite right. _eats a slice of humble pie_. I missed the mention of AGIMO.

The article is still a beat up. The US government doesn't 'slam' anybody.

</comment></comment></comment></comment><comment><USER12> I've worked in Canberra (Aust. government) IT circles, and this comes as absolutely no surprise - you could probably count the number of federal government departments that store their data (even public data) on any public cloud provider on one hand.

Yeah, there are a bunch of non-security reasons for this (latency, bandwidth costs, variable service costs), but in my experience it's always come down to security; and with what happened to Megaupload, the potential widespread (mis)use of National Security Letters / FISA Surveillance, and the general lacking of concrete privacy / security / SLA guarantees from the providers, it really doesn't surprise me that they're saying that putting your data overseas isn't a great idea.

There's no reason that US-based companies can't host infrastructure in Australia and certify that it's compliant with the DSD's ISM (which is part of where all of this is coming from), which itself says that it doesn't preclude the use of foreign owned service operators, but that they should ensure that information is hosted in and doesn't leave Australian borders. Which, in the context of what's above, makes 100% sense.

<comment><USER13> All the government departments I've worked with that made use of cloud infrastructure had agreements with the providers to have there own dedicated servers, giving then a private cloud to work with.

</comment></comment><comment><USER14> A lot of people are saying this is due to latency, but it's really not.

Is it any surprise that any country wouldn't want their data stored on US servers? Canada does the same. The USA just wants to eat it's cake and have it too.

That being said, the Australian Government (particularly Department of Defence) also doesn't allow government data on any cloud server, even those hosted inside Australia. These US cloud providers are just trying to drum up business by claiming a bias to loosen regulations, but there is no bias, just good old security policy. Tight security policy, true, but it's their data and they can direct their own employees how they want it handled.

Eventually though the walls will come down unless the functionality offered by the cloud can be duplicated on government servers, but I do think more needs to be done for security guarantees in the cloud to mature first. I have no qualms putting my own data on some 2 week old startups servers, but more serious info probably needs a little bit more consideration about where it can go.

<comment><USER13> Some hosting decision are latency/throughput based; when working on hosting full HD streaming video we couldn't get a reliable stream from anywhere outside Australia (for Australian viewers)

This video content was all publicly accessible, so there was no risk of it being seized.

</comment></comment><comment><USER10> I've read the _'2012 National Trade Estimate Report on Foreign Trade Barriers'_. And trust me it is not the juicy salacious slamming of Australia that this article makes it out to be.

Read it for yourself, it's very tame: <http://www.ustr.gov/sites/default/files/Australia_0.pdf>

For those who don't want to read the article there is essentially one Victorian(Australia State) dept. that is "sending negative messages about cloud computing services to potential Australian customers in both the public and private sectors"

And that's pretty much it. The article is a beat up.

</comment><comment><USER15> 'Microsoft's UK head admitted today that no cloud data is safe from the Patriot Act — and Microsoft will hand it over to U.S. authorities.' (2011): [https://www.zdnet.com/blog/igeneration/microsoft-admits- patr...](https://www.zdnet.com/blog/igeneration/microsoft-admits-patriot-act- can-access-eu-based-cloud-data/11225)

</comment><comment><USER16> What, does the US Government host their critical and private data offshore? I'd be very surprised if they did!

<comment><USER6> The US practicing what they preach? Hah.

</comment></comment><comment><USER17> This was an attempt, by the US, to frame the discussion with a "no your a dumb head" argument. This statement will and has backfired both on the technical side and the political side. First argument being that, as stated by others, it is primarily a technical decision for hosting not a political/privacy decision. Secondly, fear is justified if you observe the exact feared outcome occurring, which we have in the last year.

</comment><comment><USER18> It is pretty funny that they do this, as most US government jurisdictions mandate that you store many types of data within the continental US. Even poor Alaska doesn't get a break!

</comment><comment><USER19> Didn't the US just sieze a bunch of foreign owned data from MegaUpload? Carpathia Hosting leased over a 1000 servers in the US and Canada to MegaUpload. There's no reason why they couldn't have seized a Rackspace server or an Amazon EC2/S3 server had they used that instead. If the government wants your data, if it's within their borders, they will get it.

</comment><comment><USER20> It's a recognised business standard to not store data outside the realm of control. It protects trade secrets, intellectual property and upcoming business plans.

Hiring a 3rd party cloud provider fits under this policy, in the same way that companies don't need to set up their own ISP for transmitting data securely.

However if the government where the 3rd party is located can arbitrarily request access to the data. (Such as your Google Docs) then the policy prevents the company from using that service. This is a consequence of the US's own wiretapping laws and there will be no international change just because of a bit of "bad press".

</comment><comment><USER21> Also, once every few years, a cable gets cut and all international traffic slows to a crawl as every other cable becomes saturated. If you're doing something mission critical, it's nice not to have to worry about that contingency.

</comment><comment><USER22> Pot, meet kettle.

</comment><comment><USER23> The US Trade Representative is infamous, among other things, for leading the way on ACTA.

If he says something, you can safely assume the exact opposite is right.

</comment><comment><USER24> And Australia slams [insert countries] for not buying Australian goods.

If most of the traffic is from Australia, it makes sense to keep it within Australia. Then we have what others have mentions: Patriot Act and the likes.

<comment><USER25> > And Australia slams [insert countries] for not buying Australian goods.

And then encourages people to buy products and services that are Australian made.

"Ok, so...I should purchase products and services from local businesses to support our own industries, but...other countries should do the opposite and buy stuff from us? Riiight..."

</comment></comment><comment><USER26> Scumbag US government.

Gets caught with hand in cookie jar.

Demands cookies remain in jar.</comment>


Twitter's 1.5M Lines Client - <AUTHOR> https://twitter.com/KevEdwardsRetro/status/1135682762319552513 <comment><USER2> This is silly. Since when is engineering competence measured by how few lines of code you write? Arguing about lines of code sounds like a topic a Hollywood TV show might broach to appease normies, when in reality the conversation is meaningless.</comment>


The Sleeper Effect - <AUTHOR> http://www.spring.org.uk/2010/11/persuasion-the-sleeper-effect.php?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+PsychologyBlog+%28PsyBlog%29&utm_content=Google+Reader <comment><USER2> I see this with clients all the time. Pitch a "stupid" idea and 10 weeks later the client comes back with a "brilliant" one (that is identical).</comment>


I Switched to a Standing Desk, So Now You Should, Too - <AUTHOR> http://www.newyorker.com/humor/daily-shouts/switched-standing-desk-now

<comment><USER2> If any post needed a [Satire] tag, it's this one. Great read, and I almost didn't click on it because I am tired of reading about standing desks.

<comment><USER3> I had clicked, then exited out. When I read your comment, I gave it another look, and am glad I did. Great article.

</comment></comment><comment><USER4> Standing desks are for people who want the salary of a developer, but also want the physique of a cashier.

<comment><USER5> Who doesn't?

</comment></comment><comment><USER6> I nearly spit out my coffee after reading this line: "I was once a standing- desk skeptic, too. But, after I made the switch four days ago, I could immediately sense a difference in how I felt: way more self-righteous."

</comment><comment><USER7> This is hilarious, but in all seriousness, standing desk people are approaching vegans in terms of annoyance level.

How do you know that someone has a standing desk? THEY TELL YOU!

<comment><USER8> it's called a "stand up" desk! ;)

Sent from my Stand Up Desk.

</comment></comment><comment><USER9> I have backpain and I switched to a standing desk and it's working out well. The only problem now is instead of back pain, I'm having foot pain. Is this normal or are there ways to reduce this pain?

<comment><USER8> I use a standing mat from Varidesk.com which is very helpful. It's also important to wear supportive/comfortable shoes, ideally sneakers.

</comment></comment><comment><USER10> "According to an important WebMD article that my friend Tony described to me, every minute you spend sitting shaves several years off your life."

I've been dead for _years_

<comment><USER11> Me, too. Thankfully, this hasn't affected my level of productivity.

</comment></comment><comment><USER12> "every minute you spend sitting shaves several years off your life"

Wow, I could be hundreds of years old if I never sit down...

</comment><comment><USER13> bogus! everyone knows they're causing skinny legs: [https://thequickword.wordpress.com/2014/03/27/standing- desks...](https://thequickword.wordpress.com/2014/03/27/standing-desks-may-be- linked-to-skinny-legs/)</comment>


The Ruby Toolbox is broken - <AUTHOR> https://github.com/rubytoolbox/rubytoolbox/issues/1 <comment><AUTHOR> Concerning this wonderful site: [https://www.ruby- toolbox.com/](https://www.ruby-toolbox.com/) which has been around for ages and is/was one of the best sources to find the right tool for whatever adventure you were up to in Ruby land. Big shout-out to Christoph for creating and maintaining this amazing little helper for so long! <3</comment>


Performance of fork()/exec() in typical web applications? - <AUTHOR> https://www.postgresql.org/docs/9.6/static/tutorial-arch.html <comment><AUTHOR> I've read (and have been told) that CGI is a performance bottleneck, because the CPU time saving is absorbed by: a) kernel-land fork()/exec() calls; and b) disk input/output; and also that c) developer time is more valuable than CPU time.

Regarding a) I find it something of a contradiction to be told NOT to use CGI because it will degrade performance, then to be told you shouldn't care about performance (of interpreted languages) because it's easy to "throw more hardware" at the problem. I also find the argument against a fork()/exec() approach to be contradictory, when many databases fork() a new process per connection (e.g., the PostgreSQL documentation says "The PostgreSQL server can handle multiple concurrent connections from clients. To achieve this it starts ("forks") a new process for each connection.").

Regarding b) many queries (in my use cases) are repetitions of previous queries, with minor modifications, meaning the OS/DB caching mechanisms cause fewer I/O calls to actually hit the disk.

Regarding c) I run a tool to automatically (and incrementally) build my software every time I save a source file, so the "edit-compile-test" cycle of compiled languages does not really apply - all I do is edit my code and refresh my browser.

What are other people's experience in this area? I'm hoping for some answers from "old school developers" as well as younger developers. I've been taken in by the "new shiny toys and architectures" on a number of occasions, and while I can see the benefit in designs like, e.g., the Actor Model, the longer I work in software, the more I find simplicity winning out.</comment>


Encryp-xit: Europe will go all in for crypto backdoors in June - <AUTHOR> https://www.theregister.co.uk/2017/03/30/ec_push_encryption_backdoors/ <comment><USER2> "The EC's goal is to provide the police with a "swift and reliable" way to discover what users of encrypted apps have been communicating with others."

Uhm, I'm sorry, why only users of encrypted apps? What about people in cars? Isn't it about time police had a swift and reliable method to find out what car passengers say to each other? Do we really want to let terrorists and pedophiles use their cars as a safe haven, where they can say whatever they want, and the good guys are powerless to find out?

I also heard almost all terrorists and child molesters talk to others in their homes. There's many reports of terrorists getting together in someone's house to plot and exchange information. I think it's about time we gave the good guys the tools they need to find out what was said in a room. We wouldn't want to leave pedophiles and terrorists any safe havens, would we?

And don't worry about abuse - any time a police officer requires access to the recordings of microphones that will be mandatory in all cars and houses, a judge will have to approve the request, so the risk of abuse is minimal! Only privacy extremists would be against such common-sense precautions.</comment>


Stupid Bosses I've Had (Part 2 of 3) - <AUTHOR> http://edweissman.com/stupid-bosses-ive-had-part-2-of-3

<comment><USER2> > Boss: Jerry in accounting complains about his tickets too much. I'm going > over there to give him a piece of my mind. Me: Don't give him too big a > piece. You need all you can get.

Your boss may have been an idiot, but all this quote shows is you being a jerk.

</comment><comment><USER3> Boss: Sam pushed a bug into production last week. How do we prevent that from ever happening again? Me: Don't let anyone do anything. Boss: No, I'm serious. Me: So am I.

So classic. But it's true, you could try to work with the Boss a little more. Maybe say, "it's impossible to prevent that from _ever_ happening again, but there might be some things we can do to reduce the frequency of that happening." Then you can talk about things like (assuming that if your boss it that bad that maybe these things aren't happening) code reviews, automated testing, etc.

</comment><comment><USER4> When you think this is a joke you should read Peopleware. [http://en.wikipedia.org/wiki/Peopleware:_Productive_Projects...](http://en.wikipedia.org/wiki/Peopleware:_Productive_Projects_and_Teams)

</comment><comment><USER5> I have to agree with the first comment on the page. Most of these are just the author + coworkers acting likes asshats.

</comment><comment><USER6> You should start drawing comics for these, it could be a whole new career for you.

<comment><USER7> Don't forget to give the main character a sidekick. Maybe a dog?

</comment></comment><comment><USER8> Tired of your boss? I have a great boss and I work in a wonderful team. Lots of C++, real-time, unix, vxworks (target). Denver (Lakewood) Medical devices. We are looking for a pretty good dev. with at least 5 yrs exp. Will be a contract to hire. (6 - 12 months). Shoot me a resume with demands/conditions if interested! Cons: No growth, salary a little below market. Pros: Very competent team, challenging projects, stable.

</comment><comment><USER9> OH: "I finally figured out how to tell if my boss is lying"

"How?"

"His lips are moving"

<comment><USER10> My boss walked in carrying a duck.

I said "where'd you get the pig?"

He said, "it's not a pig -- it's a duck."

I said, "I was talking to the duck."</comment></comment>


Leo Editor - <AUTHOR> https://www.leoeditor.com/ <comment><USER2> I've used Leo extensively for one large project, several smaller ones and all the DD work for 8 years until 1/1/2017.

It's a _very_ good and well thought out program, it's a bit like a cross between emacs org mode and python programming environment (rather than lisp) geared towards literate programming but very useful for other kinds of applications.

I'd love to see a 'Google docs' style multi-user version of it, that would be an awesome tool, especially if it would be self hosted.

<comment><USER3> What happened on 1/1/17 to make you stop using it?

<comment><USER2> We badly needed a multi-user capable tool so I hacked something that replicates the 2% of Leo's functionality that we need to get our work done. It's far from ideal but two years on there are a few tens of thousands of nodes in the system and it has already far outlived it's expected life-span (as always...).

We really will do that rewrite one of these days though, especially with more than one job on the go at once the system will start to show its limitations.

Even so, for a three day hack it has done remarkably well.

<comment><USER4> Please write a blog post about it! That would be a great read :)

<comment><USER2> It's a one page PHP app that any HN'er could probably throw together in a day or two, and it would likely look better and work better than what I built so there isn't much honor in there, I needed a solution, not something that would serve as the basis for a nice write-up.

<comment><USER5> > _two years on there are a few tens of thousands of nodes in the system and > it has already far outlived it 's expected life-span_

This sounds like something that would be more than interesting enough for me to want to read, quite apart from the quality or complexity or ingenuity of the code itself. A nice write up isn't necessarily one that was planned as such at inception.

<comment><USER2> It's a few hundred lines of _very_ ugly PHP, at a minimum I would have to do some housecleaning before posting the code and there is no upside for me, it was - and is - throwaway code and I can't wait until we have a viable replacement so I can kill it.

Side note: it uses a bunch of keyboard short-cuts to rearrange the tree by moving nodes around and JS absolutely sucks are reliably capturing ctrl-key combinations. Highly frustrating.

Long story short (and without the code):

The application presents a tree to the user, parts of which can be copied, each node in the tree is internally referenced by an ID which allows for multiple nodes having the same name attribute. Besides the name attribute there are tags, source (handy to keep track of where you found stuff), an answer to the question associated with that node, an advisory and a bunch of flags and priorities.

The layout is three panes, a top one with some links for commonly used functions and a search bar, the left hand side gives the tree and the present location in the tree and the right hand side shows all the attributes of the current node.

It features import and export in XML format of the whole tree or parts of it, the ability to attach pdfs and images to nodes (the images are shown inline in the parent node), to attach notes to nodes and to export to a different editor for report writing purposes (usually open office).

<comment><USER6> The web is amazing. That you can throw that together in a single small file of "throwaway" PHP and use it in production speaks to why the web has been such a successful platform.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> I have been using it forever (over 10 years) to organize financial data and do taxes. While I should credit Python because these are Python programs after all, it is really Leo that enables me to easily keep data organized. Queries can be ran by easily running Python scripts inside of Leo with results directed to the log panel, turning Leo into a light-weight IDE.

For example the top node for accounting is like this:

      #@killcolor
      # accounting

      from datetime import date
      import pprint
      import math

      <<defs>>

      year = 2006

      <<2006>>

      inc_year()
      <<2007>>

      inc_year()
      <<2008>>

      ... more data

      inc_year()
      <<2018>>

      inc_year(0) #update certain yearly balance records without
      advancing

      def runacct(argv):
          if len(argv) > 1:
            if argv[1] == 'q':
                transquery(argv[2].upper())
            elif argv[1] == 'g':
                groupquery(argv[2].upper())
            elif argv[1] == 'h':
                holdingquery(argv[2].upper())
            elif argv[1] == 'm':
                if len(argv) == 3:
                    monthquery(int(argv[2]))
                else:
                    monthquery(int(argv[2]), int(argv[3]))
            elif ... many other query options
          else:
            balancequery()

      if __name__ == '__main__':
          from sys import argv
          runacct(argv)

<comment><USER8> Interesting! How do you keep transaction records?

<comment><USER7> I use two classes to track accounts and transactions:

      class acct(object):
        # bank and brokerage account
        allacct = []

        def __init__(self, name, balance, holdings=None):
            self.name = name
            self.balance = balance
            self.holdings = holdings
            self.xferamt = 0
            self.accum = 0 # used to track cumulation ad hoc values
            acct.allacct.append(self)

        def buy(self, sec, amt, cost, day):
            rec = trans(('buy', sec, amt), -cost, day, self)
            self.balance -= cost
            if not self.holdings.has_key(sec):
                self.holdings[sec] = [0]
            self.holdings[sec][0] += amt
            self.holdings[sec].append(rec)
      ......

      class trans(object):
        # transaction record object track cash invovled in each transaction

        allrec = []

        def __init__(self, t, amt, day, where):
            try:
                self.type = t
                self.amt = amt
                self.date = date(year, month, day)
                self.where = where

                trans.allrec.append(self)
            except Exception as err:
                print t, amt, year, month, day, where
                raise err

Then for each data line I just do any of the following:

      SOMEACCT.buy(...)
      SOMEACCT.sell(...)
      SOMEACCT.credit(...)
      SOMEACCT.debit(...)
      SOMEACCT.xfer(...)
      # classified by tax categories:
      SOMEACCT.int(...)
      SOMEACCT.div(...)
      SOMEACCT.fdiv(...)
      SOMEACCT.mint(...)
      SOMEACCT.mdiv(...)

Then it is easy to query and do computations in any way one cares to write a function to do.

<comment><USER8> Thanks! Today I use Excel to track my accounts, but I've been looking for alternatives... Now I'll evaluate your idea.

<comment><USER7> You are welcome. This approach has worked well for me with over 10 thousand transactions tracked so far. It is very flexible as you can write your own IIR computation or match capital gains etc.

</comment></comment></comment></comment></comment><comment><USER9> I've wanted to use this for a few years, and finally dived in this year.

The good: If you can wrap your head around it and spend a fair amount of time learning it, it is quite useful, and the claims on the web site no longer seem crazy. It's not my primary editor, but I can see I'll use this a lot (primarily an Emacs guy).

The bad: Very poor documentation. A lot of the stuff on the site is outdated (so examples won't work). In my experience, people on the mailing list will help, so it makes up for the poor docs - but it is kind of off-putting. There's a ton of stuff it supports that are mentioned nowhere in the docs.

Some hints: Learn how settings work, and dive into all the settings - you can do this from within Leo. You'll learn a lot more about Leo's capabilities that way (as well as make small tweaks to the pretty ugly UI). Changing a setting doesn't go into effect immediately - for that I think you can do:

M-x reload-settings (honestly forgot the command).

Some settings, though, involve quitting and restarting.

Also, it's not really a great _editor_. Its power comes from nodes and scripting. So become very comfortable with nodes, and try to learn scripting immediately. I'm still a beginner at the latter, and sadly the docs just suck. So I slowly try, ask, learn more, make my own notes, etc.

If I keep it enough to become much more knowledgeable, I'll probably end up writing a _proper_ guide on using it.

It very much is similar to Emacs in the sense that everything is a command/function. So you can reprogram it to do whatever you want.

</comment><comment><USER10> People use Leo in different ways...

I used to use Leo for notes on everything I was working on. The killer feature for me was the tree outline pane could clone nodes. So I could have one subtree of say Projects, another of say my Jira tickets, a third on Talks and Blog Posts. And then have clones of the current ones all together in a subtree called Current. I would adjust their order each morning as my prioritised To Do list for the day.

More recently, I have tried switching to orgmode. Some aspects are great. But I really miss Leo's tree pane 'table of contents' and its clonable nodes.

<comment><USER11> So you still use Leo or managed to switch to orgmode? I haven't used either, but have contemplating it. Currently, I'm using CherryTree, which is just okay.

<comment><USER10> I switched to orgmode. Mainly because I wanted to run the same core tools at work and at home.

At work we are not allowed to run random software; every package needs to be registered, source security-tested, compiled from source in house, put in an internal repo, and then installed from there. So while at home I could do 'pip install leo', at work it was a mess of tracing dependencies (Qt), getting them registered, etc, etc.

Plus at work, someone else had gone through this pain for Emacs and orgmode.

</comment></comment></comment><comment><USER12> Ah yeah, Leo Editor. The Lotus Notes of the outliner-world. That thing is as powerful as horrible. So full of good ideas, and such a garbage in implementation.

On the good side stands the ability to have an programmable outline, paired with a good enough editor to handle the content of nodes. Then there also directives, which are basically special commands for inline-usage. Things like @wrap to wrap lines, or @language <value> to define activate language-specific handling for the following code. @language is especially useful because you can combine several in one node. Finally there is also the relativ open ability to customize things with python. All of this combined a regular workflow I still use with Leo is to create a node with several @language- blocks on a node. One for code, one for data, one for Documentation. Then call a selfmade-function which extracts the code and data and executes it and save the result in a new node in the outline. Very useful to transform or generate data on the fly. There are also directives to load/save external files, with support for some fileformats to automagically handle the outline.

But then again, on the bad side, as a dev I must say the whole projects has a horrible stench of foul code and ugly design. There is a huge amount of features which either work bad, don't work at all or even work in harmful ways (dataloss). The codebase is just a ragtag-compilation of random ideas from people which seems to have no clue about proper software development, and who are even proud to have come up with some shit they consider as smart. For anyone who wanna try out this software: don't except to much, and prepare for many hateful corners and a steep unnesseccary learning-curve. And save your data! Often.

<comment><USER13> Upvoted based on your selection of Lotus Notes as the apotheosis of good ideas wrapped in awful implementation. I've never used Leo but just looking at the installation process turned me off the entire idea.

</comment></comment><comment><USER14> I'm watching the videos and the nodes look like a powerful abstraction. I'm not a fan of some of the terminology, for example, "clones" are not really clones but the opposite: references

<comment><USER15> I think the conceptual difference between a clone and a reference is that clones have no hierarchy. If I have two clones, then removing either one will cause the other one to become the "original".

<comment><USER16> aliases?

</comment></comment></comment><comment><USER17> In case the author is reading this there is a broken link for "screen-shots", looks like a simple mistake of not including the root.

<comment><USER18> Working link to the screenshots-page: [https://www.leoeditor.com/screen- shots.html](https://www.leoeditor.com/screen-shots.html)

</comment></comment><comment><USER19> First, something which amused me:

> "Word outlines are very useful. But Leo makes Word look like a clunky > toy."—Joe Orr

Well, yes. Any text editor would make Word look like a clunky toy, because Word is a word processor. They don't do the same things, they aren't aimed at the same audiences, and they evolved different UI conventions because of that.

That nitpick aside: It being written in Python is nice, and the fact outlines give your document something like a DOM which is accessible in a Python object tree is nice. It might be possible to massage this into something almost as nice as macros for languages like C# or Java.

</comment><comment><USER20> past

[https://hn.algolia.com/?query=Leo%20Editor&sort=byDate&dateR...](https://hn.algolia.com/?query=Leo%20Editor&sort=byDate&dateRange=all&type=story&storyText=false&prefix&page=0)

<comment><USER21> I missed every single one of those past posts, so I'm glad OP posted it once again.

There are many reposts that I'm also glad happen. They're often a reminder of something I've forgotten about and that I'm glad to see again, or sometimes they're just something I missed.

<comment><USER22> Reposts are great, but I also enjoy comments linking to previous discussions. It's nice to have a look at what was said before.

</comment></comment></comment><comment><USER23> UI looks ugly as sin

<comment><USER2> So does a chainsaw. But it gets the job done quickly and with a minimum of fuss. Eye candy is fine of you put form over function, personally I prefer fast and effective. Pretty is optional.

<comment><USER24> I don't think it has to be quite that black and white. It doesn't have to have "eye candy" and it also doesn't have to look like a 1998 Delphi project. Strive for the gray area and if that is not achievable... then yes, function over form.

<comment><USER25> If more things looked like a 1998 Delphi project, desktop UIs would be much nicer to deal with.

</comment></comment></comment></comment><comment><USER26> Has anyone used this, org-mode or other literate programming tools for a full team project _at scale_ (whatever that means, non-trivial multiple months, lots of code)? Did the team have to buy in or were they already users? How did it go- did it improve.

I've used org-mode for about a year and a half and have found it helpful to to my productivity and feeling put together. I can see the potential for benefits to a team, but not many people want to learn emacs for a job if they don't already use it.

<comment><USER27> We use Leo to organize about 1000 puppet modules managing about 500 linux systems (50/50 real/virtual), of which 60% are "unique", a.k.a., pets, not cattle. Geppetto in Eclipse is the closest thing, but Geppetto only helps with puppet modules, not puppet nodes (hosts).

The good: Leo provides rapid access to understanding the complexity.

The bad: Leo XML file format is collaboration hostile, since resolving git conflicts in its multi-megabyte XML file is out of the question.

The ugly: I've got perl code to translate the XML file to and from a directory of several thousand small files, one per Leo node, and far more git-conflict friendly.

The worst: the version of Leo on which we're stuck used "sentinels" \- specially formatted comments - to keep Leo's structure of the file in sync with external changes to the file. Never use that: use a new version of Leo and use its @clean format, which doesn't use sentinels. Not only are sentinels offensive to look at in the managed file, this version of Leo occasionally gets confused and tries to use "//" for puppet comments instead of "#". (Yes, some of what puppet (and thus Leo) is managing is php.) But we're stuck with this version of Leo, because when newer versions of Leo read our Leo XML file, many of the nodes lose their content, namely, a catastrophic lack of backward compatibility. It would take me at least a month of getting nothing else done to re-ingest our puppet configuration into a newer Leo.

<comment><USER28> @thyrsus (slightly off-topic)

I stumbled upon an old comment* you made about dealing with orgmode and noweb when editing an erlang file (bit syntax). If you didn't find it yet, at the end of the file, insert:

      Local Variables:
      org-babel-noweb-wrap-start: "{{{"
      org-babel-noweb-wrap-end: "}}}"

then you'll use {{{chunk-name}}} instead of <<chunk-name>>.

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

</comment></comment></comment><comment><USER29> What do they mean by outline?

<comment><USER30> Outliner - like emacs org mode or what Scrivener will do.

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

</comment></comment><comment><USER31> I love outliners but I am firmly in the single pane outlines camp like Ecco Pro and Omni Outliner (org mode also?). For some reason, I just can't swallow the two pane UI.

I wonder if there has been any usability research on which model (single or two pane) is least obtrusive to flow of information to and from the user.

</comment><comment><USER32> If here are some Leo people reading here:

The "Screen Shots" link is broken.

It should be: [https://www.leoeditor.com/screen- shots.html](https://www.leoeditor.com/screen-shots.html)

But currently it points to nowhere.

</comment><comment><USER33> Wish JetBrains would add these features to their IDEs. We need more literate programming today, not less.

I've tried Leo a couple of times and like the concept _a lot_, but never got on with the implementation.

<comment><USER34> I agree with the need for more literate programming. Have you tried emacs with org-mode instead of Leo?

<comment><USER33> I'm a Windows user and so I've never really got into emacs. It's one of those pieces of software that like vim (beyond the ultra-basics) seems too daunting to get started with.

</comment></comment></comment><comment><USER35> I heard about Leo about half a year ago. I got really excited, as from the way it was described, it mirrors the way I think. Unfortunately, I could not get it to run on MacOS.

<comment><USER36> Just installed it tonight.

High Sierra

Python 3 installed via Homebrew

pip3 install leo

Ran fine right out of the box.

<comment><USER35> I'll have to give it another go. I really wanted to try it out but was bummed that I could not get it running.

</comment></comment></comment><comment><USER37> Since the title gives absolutely no information about what this is, here's the description on the site:

> Leo is a PIM, IDE and outliner that accelerates the work flow of > programmers, authors and web designers. Outline nodes may appear in more > than one place, allowing multiple organizations of data within a single > outline.

I still have no idea what this is after reading the front page other than being yet another IDE.

<comment><USER38> I used it a while back in a previous incarnation of the editor. It is a "Outline Editor" for use in what is called "Literate Programming". My view of it was that you write documentation and embed code in the documentation and then you can use a mechanism the editor provides to output just the code (when you want to compile it or execute it). The editor made it easy to hierarchically organize and rearrange code the way you wanted it and had a way to output just the code for use in compilation etc.

The current iteration seems to have added more features while basically being a outline editor -- imagine keeping code in Emacs's Org mode and being able to compile it.

I liked it, but it felt like it didn't have all the bells-and-whistles of modern IDEs and required a different way of dealing with code.

<comment><USER39> > imagine keeping code in Emacs's Org mode and being able to compile it.

Something like this

[https://github.com/nakkaya/ferret](https://github.com/nakkaya/ferret)

The whole source code is in literate form in one org file.

<comment><USER38> Nice. Someone actually used Literate programming to write something useful :-). The ferret org-mode info is very readable.

<comment><USER40> Perhaps the most insane example of literate programming is Axiom [[https://en.wikipedia.org/wiki/Axiom_(computer_algebra_system...](https://en.wikipedia.org/wiki/Axiom_\(computer_algebra_system\))], which is several books worth.

It wasn't originally written in literate style, but it was a very large codebase which almost nobody understood. Tim Daly put an enormous amount of effort into making it literate, so that anybody can be introduced to it.

</comment></comment></comment></comment></comment><comment><USER41> (because there is no toplevel comment saying this):

it is emacs' org mode on steroids. If you don't like org mode, move along.

...And some of the side effects of the steroids are already showing (e.g. "you can embed html in markdown". Really? So it is now an html renderer with markdown 'shortcuts'?)

<comment><USER42> What does Leo have that org doesn't? I use org a lot.

<comment><USER9> Mostly the clones feature. The most common use case: If you get a bug report, you can put the bug report, portions of the code related to the bug report (which could be spread over several source code files), any tests and test collateral related to it, all in one tree. When you make changes to the code in that tree, the corresponding source file will get touch.

Also, things like "Find all functions that contain some string and put them in a tree" is trivial, and used a lot.

These are out of the box. You can then script more advanced stuff in Python.

Even though it's all Python, it seems to handle heavy loads well. I once opened all the source code of my project at work (0.5M lines of code). It took a long time to load them the first time (initial conversion into nodes). But once I had them loaded, I could save it as a project and reopen easily. Then searching the whole code base for a string was pretty fast as well. I don't know how well Emacs can handle thousands of files...

The literate capability is really trivial as well. If you're coding with Leo, you likely _will_ start using basic literate constructs. It's just natural.

But don't read too much into the comparison with org mode. I use org mode and Leo for very different things.

<comment><USER43> EDIT: never mind, I see the clones are references that can appear in multiple places.

Wouldn't narrowed views in org-mode accomplish the same?

<comment><USER9> >Wouldn't narrowed views in org-mode accomplish the same?

No. Narrowed views only let you see a subtree. This is about gathering nodes from different parts of the tree and putting views into them under another node.

Let me give some detailed examples - starting from some basics.

In Leo, if I open a .cpp file, it will make a node out of each function. If I edit any node and hit "Save", it will update the cpp file with the change. In Org mode, you can copy/paste code from an existing .cpp file into an org document, but the two are now distinct. A change in the org file doesn't affect the .cpp file. The best you can do is use tangle/weave - but that would involve a fair amount of work to convert your whole project/file. And probably won't play as well with the rest of your coworkers as Leo will.

A trivial example: I've cleaned up many of our .cpp files where we had multiple classes in one file, and the methods were all over the place. Since each method was a node, it was easy for me to group together all methods of each class so they are not scattered around the file. It was absolutely trivial.

Now to the bug example. You have a bug you need to explore. You have a Leo project that has all your source code. At the top level, you'll have a node called "Code". Under that, each file will be another node. Under each "file" node you'll have a node for each function. Back at the top level, you have another node called "Tests" \- also hierarchically structured by type of test.

So now you create another top level node and call it "Bug". You can put in notes (e.g. Bugzilla ID, or copy/paste relevant portion from the bug text here). So now what you do is find all parts of the code that you think are involved in the bug. Make a "clone" of their nodes, and put them under your Bug node. So now those functions appear in two places - under the "Code" node, and under your "Bug" node. A clone is basically a "view". If you edit the text of a cloned node, all of its clones get updated. So you can now happily edit code under the Bug node, knowing that your files are getting updated. You can also clone relevant tests and again put them under the Bug node, and fix your tests. When you're done fixing the bug, just delete the "Bug" node.

A simpler example: My work involves some rather large classes that are essentially singletons (i.e. a hack to use global variables without calling them that). This causes headaches. So sometimes I need to know all the possible places in my code base where one of its members is updated. In Leo, with one command, I can tell it to search all the nodes for that string, make clones of them, and put them under a top level node. So now under that node I have all the places the variable is touched. Easy to quickly examine. This really sped up the rate at which I would understand unfamiliar parts of the code.

BTW, you can get deeper than the function level. I've often taking a long function and split it up into nodes. So some of my code explorations involve nodes that are parts of functions. It is quite easy to break up a function this way in Leo.

</comment></comment></comment></comment></comment><comment><USER44> Some years ago I tried to use Leo but could never really get in the "groove" of it. Now that I have more experience with outlining and have bumped into the limitations of what I use now, it deserves a second look.

</comment><comment> onion-soup Is this how internet looked in 60s?</comment>


Nokia Launches Lumia 920: 8MP PureView, NFC, Wireless Charging, Windows Phone 8 - Suraj-Sun http://www.engadget.com/2012/09/05/nokia-lumia-920-official-dual-core-1-5ghz-snapdragon-s4-cpu-wi/

<comment><AUTHOR> _The Lumia 920 will arrive in pentaband LTE and HSPA+ variants and both are expected to ship "in selected markets" later this year._

"Later this year"?

I hate it when companies do this. Hate hate HATE it.

"Here's something awesome! Want it? OK, come back a few months from now and we'll sell you one. What? No, we can't tell you exactly when. We can't even tell you yet what it will cost. It'll be a few months, and cost some amount of money, that's all you need to know."

Then the few months pass, all the hype dies away, and when the device launches _for real_ , nobody buys one.

I'm sure there's a marketing rationale for doing things this way, but I can't see it. What good is all this press attention _now_ , when you can't actually take orders for the thing the press is raving about? When your ability to do so is _so far away_ that you can't even give a specific date?

<comment><USER2> I'm going to guess at:

* Let the public markets know there's something good in the pipeline to keep the stock price as a decent level

* Let the distributors / carriers know (+ no worries about leaks)

* In some ways, it's better than the alternative of a leak, where all the marketing messages come from some crappy blurry cam mixed with a bunch of fake images

I agree it's a little risky from the consumer's POV. Bear in mind a couple things though:

* Even for consumers, when it gets released, they feel more positive towards a product they've heard of previously

* It's possible that the interest will be maintained over that period, although this is a stretch for anyone that isn't amazing at marketing.

<comment><AUTHOR> When managers put "keeping the stock price at a decent level" over "selling a metric ton of our products," they've lost the game before even taking the field. Sigh.

</comment></comment></comment><comment><USER3> _4.5-inch PureMotion HD+ display, dual-core 1.5GHz Snapdragon S4 CPU, 2,000mAh battery, NFC, integrated wireless charging and an 8-megapixel rear PureView camera capable of 1080p video. The display packs WXGA (1,280 x 768) resolution, is 25 percent brighter than the next best panel on the market and it's the fastest LCD that Nokia has ever shipped on a smartphone._

What...on Earth...does this all mean?!? Consumers don't care about any of this. I'm tech savvy and I still don't know why having a 8MP camera makes pictures look any better? Furthermore, I have no idea what my iPhone has in terms in Megapixels, so I have nothing to compare it to...

<comment><USER4> Sorry, you are NOT tech savvy if you don't know the pixel count of the phone you own.

Edit: i meant the camera mpx and not screen resolution. If you dont know tha your 8mpx camera phone has 8mpx camera, you are NOT tech savvy.

<comment><USER3> I don't think most consumers know how much MPs are in the camera, nor have any idea what the number means in terms of picture quality. Hence this: <http://www.kenrockwell.com/tech/mpmyth.htm>

<comment><USER4> My dad, mom and sis know what Mpx camera they have on their phones. And my mom and dad are no way close to being tech savvy. What the number means is a whole different question. But if you don't know that in your phone, you cannot begin to say that you are tech savvy.

<comment><USER5> So someone who's playing with node.js, EC2, Arduinos, etc. isn't tech savvy because they didn't read their phone's spec sheet when they bought it?

</comment></comment></comment></comment></comment><comment><USER6> Why on earth aren't they announcing pricing and availability?

</comment><comment><USER7> Leaking everything before the actual event happened was a huge mistake. No surprise during the event, no excitement, no clapping on features announcement... The event looked and sounded boring when what they were actually announcing was cool.

</comment><comment><USER8> I'm in the market for a new phone to replace my 3 year old 3GS and I'm disappointed that they didn't have any availability announcements. Hopefully this information will be released soon.

</comment><comment><USER9> The focus on the yellow phone is an unfortunate decision. The bright yellow creates extreme contrast with the black frame and background, and the white icons are barely visible.

<comment><USER10> None of the current theme colors are hard to read, even "pink" and "teal". I think in real life they're more careful about readability. And they're focusing on new colors because a lot of people were frustrated that there were only 2 (now 4) colors of the Lumia 900.

</comment></comment><comment><USER11> 8 is enough megapixels, but will it have the proper flash of some of the pre- windows nokia models? That's the one thing I really miss from modern smartphones.

</comment><comment><USER12> I really like the look of this phone. I've been an Android guy since I left my venerable Blackberry Bold 9000, but I find myself really attracted to the interface of WP7/8. With a phone of this build quality, it's enough to make me give it a shot for my next upgrade.

</comment><comment><USER13> I have always liked the Lumia series. But its becoming a pain to decide to support all these new devices and operating systems for my small little app. Way too many of these OS versions and form factors to worry/think about.

</comment><comment><USER14> Nokia's giving away Qt was the final sign of their move towards the road of no return. It was good for Qt though, since Nokia has no interest in it anymore and could only hinder any progress. Nokia is history now.

</comment><comment><USER15> I believe it is hard to be successful if they able to compete on price. If they release this phone with same price as iPhone or Galaxy S, people will choose others.

</comment><comment><USER16> The camera's selling point is the optical image stabilization which counters camera shake at low light, slow shutter shots. That sounds very good...

</comment><comment><USER17> Wireless charging comes three years after Palm.

<comment><USER18> And it still remains to be seen if it sticks this time. Funny how "innovation" works like this.

</comment></comment><comment><USER19> what does 920 refer to?

<comment><USER20> The 900 was their last flagship Lumia device so, as this model is the next generation they've incremented the number.

</comment></comment><comment><USER21> This baby is going to sell hundreds if not a thousand units.

<comment><USER22> i hope they sell millions</comment></comment>


The age of mass innovation - <AUTHOR> http://www.economist.com/specialreports/displaystory.cfm?story_id=9928291

<comment><USER2> The economist has a special report on innovation this week. There are 8 articles similar to this one and as of now none are subscription only:

see upper right: <http://www.economist.com/printedition/>

</comment><comment><USER3> What do you think might happen if the federal government tried to implement a centralized innovation initiative?: Would it be a joke? a moderate success? a non-entitiy? or could it even be counter-productive?

<comment><USER4> If modern art is any indication, it would be mostly a joke/counter-productive, with a few successes.</comment></comment>


Algorithmic architecture [video] - <AUTHOR> http://youtube.com/watch?v=DrapiUmMsmM <comment><USER2> I spent about a year and a half doing consulting with an big architecture firm several years ago.

The primary project I worked on was essentially the opposite of this guy's idea - to take the existing plans for the highly rated hotels the firm had designed and to attempt to algorithmically extract the heuristics for Alexander's "QWAN".

It was a very interesting, ultimately unsuccessful project - but I can certainly imagine a good future for this type of idea.</comment>


Scenes From Penn State's Startup Week Hackathon - <AUTHOR> http://techcrunch.com/2013/03/24/scenes-from-penn-states-startup-week-hackathon/

<comment><USER2> Such an awesome array of speakers. I wish I went!</comment>


PerfView Is Now Open Source on GitHub - <AUTHOR> https://blogs.msdn.microsoft.com/vancem/2016/09/18/perfview-is-now-open-source-on-github/ <comment><USER2> For anyone wondering what is PerfView like I was, let me spare you a trip to google:

> PerfView is a performance-analysis tool that helps isolate CPU and memory- > related performance issues.

> PerfView is a performance analysis tool focusing on ETW information (ETL > files) as well as CLR memory information (heap dumps). It can collect and > view ETL in a variety of ways. Powerful grouping operators allow you to > understand performance profiles in ways other tools can't. PerfView is used > internally at Microsoft by a number of teams and is the primary performance > investigation tool on the .NET Runtime team. Features include:

> \- Non-invasive collection - suitable for use in live, production > environments

> \- Xcopy deployment - copy and run Memory

> \- Support for very large heaps (gigabytes) Snapshot diffing

> \- Dump files (.dmp)

> \- CPU Performance

> \- Support for managed, native, and mixed code

> \- Can read XPerf logs

> \- Profile diffing

[https://www.microsoft.com/en- us/download/details.aspx?id=285...](https://www.microsoft.com/en- us/download/details.aspx?id=28567)

</comment><comment><USER3> On the topic of ETW is worth mentioning UIforETW [0] and in general Bruce Dawson's blog [1].

[0] [https://github.com/google/UIforETW](https://github.com/google/UIforETW)

[1] [https://randomascii.wordpress.com/](https://randomascii.wordpress.com/)

</comment><comment><USER4> I wonder why plaintext github link?

<comment><USER5> [https://github.com/Microsoft/perfview](https://github.com/Microsoft/perfview) there you go.

</comment></comment><comment><USER6> Hmmm... in the article is says:

      "You can download a free copy of  Visual Studio 2015 Community Edition ..."

If that's anything like the "free" version of MSVC 2013, then 30 days after installing it... it suddenly stops working until you register with MS (using valid email, etc).

No warning, no notice... it just stops and pops up a notice when you try and use it.

Personally, I call that _extremely scummy marketing_ , not "free". Maybe that's just me though.

<comment><USER7> Its not at all like the free _trial_ downloads of Visual Studio 2013 and earlier; Visual Studio Community Edition is free and not time limited, but its license restricts its use to (from memory) solo devs, small (< 5 developer) shops, open source work (with unlimited team size), and education.

<comment><USER4> nah, its exactly like 2013 one. It will stop working if you try using it offline (in a VM for example) and will demand online access and microsoft account login.

<comment><USER8> you just skip it, it will show a yellow warning sign and you won't have access to the MSDN info and a few other things which is pretty much like how the full version of VisualStudio works offline...

<comment><USER6> In the 2013 edition, there is no "skip it". Any action other than signing in/registering just closes MSVC.

If there's some way around that, please I'm all ears. :)

<comment><USER8> Eh yes there is, you just register it once and you sign out, you do not have to be signed in. Here it is [http://imgur.com/u8BiQZ9](http://imgur.com/u8BiQZ9) no trial no nothing,

I don't know what you are really complaining about....

<comment><USER6> Ahhh. "Just register it once".

I think we're talking about different things.

<comment><USER8> I figure as much, for some reason you have issues registering software, I'm guessing you haven't been using mobile phones and 99% of the services out there.

RMS would be proud but this isn't exactly a reason to complain.

<comment><USER9> So, to register it you would need to have internet access? In that case it is unusable for offline work. Even if it works after it has been registered, what the hell would you do when you need to reinstall your system?

<comment><USER8> Get internet access? There isn't an offline activation for the full version either you might be able to activate it via KMS.

If you reinstall your system you'll need internet access these days, even if it is only to activate windows.

If you restore it from an image you should be probably ok.

But sorry I don't find the excuse of not having internet viable these days.</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment>


Spotify Co-Founder "Overnight success takes a long time." - <AUTHOR> http://www.spotify.com/blog/archives/2009/10/08/overnight-success-takes-a-long-time%E2%80%A6/

<comment><USER2> Mr. Ek's concept of RPU (revenue per user) is spot on. If the music industry hopes to maintain any sort of positive relationship with their customers, they must maximize the lifetime value of fans rather than squeezing "as much as possible out of every single transaction."

Overall, its great that a company in Spotify's position is attempting to be so open. They're in a very crowded and high risk space--if they can embrace full disclosure, any business can.

<comment><USER3> If you're saying that Spotify is "open" because they openly share their thoughts than I would agree with you.

However, if you consider limiting a user's access to music to simply an online flash player unless they pay a subscription fee "open" than I strongly disagree.

The subscription business model is very 20th century. It is already failing for magazines and newspapers, so where is the evidence that it will succeed for music?

Subscriptions are just not effective when there are free (legal or illegal) alternatives to be had.

The answer to piracy is even more openness, not less.

<comment><USER4> "Subscriptions are just not effective when there are free (legal or illegal) alternatives to be had."

Sky would argue with that, the decline of old broadcast mediums has little to do subscriptions, most of the most successful web applications around use a saas subscription model, I dont see whats 20th century about it, at all.

beats the hell out of trying get people to click on adverts.

</comment></comment></comment><comment><USER5> i blame techcrunch and the rest of the media, they focus too much on hyping the companies they write about and let the PR firms push bullshit down their throat

</comment><comment><USER6> "It takes 20 years to make an overnight success." --Eddie Cantor</comment>