Learning Online - <AUTHOR> http://christinacacioppo.com/blog/learning-online

<comment><USER3> I really enjoyed reading this piece. It echoed many of the thoughts I've had over the past ten years of teaching programming off and on, and many of the frustrations I've had with existing online learn-to-code tools. (I actually wrote one such tool back in 2007, an interactive learn-to-code webapp called the AppJet Learn to Program Guide.)

In my experience, puzzling through problems with quick iteration and support from a mentor is the most effective way to learn programming. Especially in the early stages, as Christina identifies, the hardest task is simply articulating an algorithm in English:

> For all the hemming about programming languages, the hardest part for these > students was solving puzzles in English, not Java. Often, they'd skip to the > Java, glossing over their logic. This didn't work, but "forget Java for a > moment; what are you trying to do in English?" and "How would you explain > what you're trying to do to a 5 year-old?" were the two questions most > likely to unstick them. Once they explained the logic – "go through all the > letters. If you find an A, swap it with the prior letter" – the Java came > easily.

Nearly all online tools I've tried come up short in this regard, because of the major stumbling block that is building an accurate mental model (an "intuition") for how computers run your program. None of these tools tell you how to correct your mental model, because none of them really identify your mental model in the first place. For this, a human teacher is very useful!

Tools like the one Christina is building -- tools that allow for quick iteration and quick communication between learner and teacher -- are critical in that they let teachers focus on the hard part, on developing that intuition.

Christina, I fully support your effort to create tools that help humans teach other humans how to program!

<comment><USER4> This! Having a human being available to stress-test your assumptions and uncover hidden weaknesses in your mental model is one of the biggest failings of both the "hold-your-hand REPL" tools currently used by many learn-to-code programs and the "broadcast from above" approach approach to classroom-style learning that the MOOCs embrace (though are trying to alter to be more student-centric).

We noticed this awhile back and tried addressing it by setting up The Odin Project[1] to give students a way to self-organize around an opinionated and comprehensive curriculum. But, as the project grew, we found that many students dropped off due to lack of commitment and others who progressed far still had some major conceptual blind spots.

A combination of these realizations and our successful work with small remote teams who helped to build Odin (which is OSS) led us to try a much more people-focused virtual approach -- highly supported online classes comprised of small teams who pair program on project work. The Viking Code School[2], in our first cohort right now, has so far managed to short-circuit those familiar issues. Our students are progressing at a phenomenal pace, especially considering that many of them are holding down jobs at the same time. One student build CLI Tetris in Ruby in week 2...[3] But the key difference between this and what we saw before is the human-to-human collaboration.

Mental models are not learned one-way. We've invested a LOT of time trying to come up with the perfect way of explaining complex topics but no amount of videos, diagrams, and code can substitute for the 10 lines of back-and-forth you get when speaking to an instructor or another student which uncovers the true error of your thinking. All the other one-way teaching methods simply address the _symptoms_ of the problem -- "You got this wrong, here's the right answer" \-- when the real issue is almost always a slightly incorrect mental model. The future of online isn't better one-way tools, it's a conversation.

</rant>

[1]: [http://www.theodinproject.com](http://www.theodinproject.com) [2]: [http://www.vikingcodeschool.com](http://www.vikingcodeschool.com) [3]:[http://www.geminstallmichael.tumblr.com/](http://www.geminstallmichael.tumblr.com/)

</comment></comment><comment><USER5> Just reading through HN during my (very boring) introductory to programming class in high school and noticed the name seemed familiar. Thanks Christina for tutoring me over the summer! The way programming is taught in high schools needs some serious reform - and reading this gave me a lot of insight into how people learn how to code (and how I wish this kind of thinking & super cool editor was implemented in my programming class).

<comment><AUTHOR> ha, amazing. hi theresa!

</comment></comment><comment><USER6> Hey, Christina.

Really thought-provoking article! I've been teaching students to code for seventeen years, and your experience dovetails with mine. (Disclosure: I'm also the author of 'Learn Java the Hard Way'.)

I must admit that I'm skeptical that any "regular" student could learn Java well enough to pass the APCS exam in only twenty hours.

Can you explain a little better about the population you're working with? These are high-aptitude students with prior programming experience, no?

<comment><AUTHOR> absolutely all high-aptitude. my thinking there, fwiw, is that making something high-aptitude students like is the only way to build something that less-inclined students like.

their prior programming experience varied, though there's certainly bias in who would sign up for coding tutoring (free or paid.)

all were comfortable using computers, and they'd seen code before. about half had gone through a Girls Who Code summer program ([http://girlswhocode.com/programs/](http://girlswhocode.com/programs/)), which is designed, i think, to overview technologies more than drill concepts. they all had computers had home (about 50-50 windows/mac) with new-ish chrome or safari.

i only had one student take the multiple choice questions; he would have gotten a 3 or 4 on that part. he's coming off SAT prep and is good at taking standardized tests; he was weakest on the test's particulars ("how many bytes in an int?") i spent very little time on those sorts of questions; my view is that a motivated student who can understands how computers think will learn those particulars if s/he wants a 5. and for those who don't, there's google and stackoverflow.

i asked students to answer old free-response questions in the editor that's shown in the fizzbuzz video. that worked really well; with the help of the compiler, they were able to ace those questions. (i know you don't get a compiler on test day, but it seems silly to cripple them when learning.)

sometimes i tutored in person; other times, i did so over google hangout. either way, i was working one-on-one with a student, and it was painfully clear when s/he was confused, whether it was over a CS concept or a tool i'd introduced. tutoring also meant it was my responsibility to "fix it", and i think that explains a lot of why i cut 160 classroom hours to 20 tutoring hours.

<comment><USER6> That's helpful. I agree that engaging content works no matter your aptitude.

And I now see that you're saying that teacher "touch" time was 20 hours. Which seems doable if they're able to teach themselves with proper tools.

> "with the help of the compiler, they were able to ace those questions. (i > know you don't get a compiler on test day, but it seems silly to cripple > them when learning.)"

Oh. This is where we're going to have to agree to disagree. For the AP exam students must write code on paper with a pencil, with no computer in sight. It's been my experience that students that don't have quite a bit of practice doing that without any training wheels crash and burn on the exam.

<comment><AUTHOR> yeah, i now spend 2 days/week in an AP CS classroom at a public school with TEALS ([http://tealsk12.org](http://tealsk12.org)), and the dynamic's very different. after 30 classroom hours, we're at loops and conditionals!

i suspect you're right about needing to hand-write code -- especially if you're used to things like code snippets and autocomplete. i suppose i feel about hand-writing code the way i feel about understanding compilerish: you'll probably have to do it at some point, and it's a skill worth practicing, but i don't think it should come first.

<comment><USER6> I do agree with that. I don't have them hand-write code for quite a while.

And I think we agree more than we disagree; teaching kids that they _can_ code and how to think algorithmicly are far more important than getting them ready to pass a single exam.

<comment><AUTHOR> yep. very much agree!

</comment></comment></comment></comment></comment></comment><comment><USER7> Seems like this is what Thrun and other learning entrepreneurs didn't do - <USER2> with his students and teach them without a full blown website.

I would love to hear more about her work and insights.

This is the kind of schlep that most any entrepreneurs are afraid to do.

</comment><comment><USER8> "You'll not be eaten by computers any more than folks were eaten by electricity 100 years ago."

Although I enjoyed the post and agree with a lot of it, I disagree with comparing coding skills to humans having access to electricity. In think coding today is like writing was 500 years ago.

In the past you would hire a literate person to read your documents, write you letters, and so forth. Today we hire programmers to help us get the most of our computers. I think reading and writing code will be the new way to make the most of computers in the future. It may not necessarily be through the coding tools and languages we have now.

Then again, I'm no Ray Kurzweil

</comment><comment><USER9> "High test scores often grant college credit at a public university – which means, very tangibly, needing fewer credits and tuition dollars to graduate – or a "you took a hard class" gold star (though no credit) at a private university."

Every private (US) university I applied to was willing to offer AP credit, given a high enough test score. The vast majority of my (private US high school) peers took AP exams, went to private universities, and received credit for their AP classes. One of them earned enough AP credit to enroll at Harvard as a sophomore.

I've never heard of AP exams being a "Public Universities Only" thing.

<comment><USER10> I'm currently a freshman at an Ivy League school where no credit is offered for AP exams, and I believe that this policy is similar at many of our peer institutions. The exams can be used for placement purposes; however, they aren't really that necessary considering that prerequisites are very loosely enforced. I think the most important use for AP exams is actually during admissions. An applicant with an AP class on his or her transcript but with a low or missing AP exam score may cause an admissions officer to question the rigor of the class.

We do have one program that allows students to graduate early or earn a masters degree in four years. Most people here have enough AP credit to do so, yet they rarely elect to use it.

<comment><USER11> > The exams can be used for placement purposes; however, they aren't really > that necessary considering that prerequisites are very loosely enforced.

That may be the difference, then. At both my public universities, prerequisites were rigorously enforced.

</comment></comment></comment><comment><USER12> I skimmed through some of the longer passages so maybe I missed it...but whatever video tool she's using is _slick_...The video crispness of the text looks nice enough it's as if she's using animated vector graphics, and the play-on-hover is an elegant touch.

I'm not a huge fan of learning via video...however, I've found that a long list of instructions with text and screenshots can be hard to follow...for a student to see the mouse moving and text being typed in makes for a smoother illustration of the steps, especially if the steps involve actually clicking on buttons and menu items, which can be difficult to explain via text and screenshots.

I've been working on a quick screencast-to-gif tool for myself, so that I can record myself doing some actions and then render it as a GIF (since sound isn't needed)...but whatever tool the OP is using to make the videos play upon hover, I'd love to use for animated GIFs.

<comment><AUTHOR> (i made the videos.)

it's all pretty simple: they're quicktime screencasts, converted to mp4s, and played with videojs. i just took off the player's chrome and rigged it to start/stop onmouseover/onmouseout.

<comment><AUTHOR> oh -- the tool that's being screencast is the thing i've been building; it's a web app that was running in chrome.

</comment></comment></comment><comment><USER13> Everyone seems very focused on the tech, but IMHO outcomes are mostly driven by very familiar factors. Here's another perspective on learning online: make it full-time and ramp up social engagement. I operate an online learn-to-code program that parallels a similar in-person program ([http://www.hackreactor.com/remote-beta/](http://www.hackreactor.com/remote- beta/)) and educational outcomes (assessments) are on par between the two.

Some blog posts from current students regarding my program as well as others (Bloc, WGU, Thinkful):

[http://www.chrisbradley.codes/an- education/](http://www.chrisbradley.codes/an-education/) [http://www.parsed.io/my-remote-learning- experiences/](http://www.parsed.io/my-remote-learning-experiences/)

</comment><comment><USER14> Christina,

I still owe you commentary on your site -- as soon as I get a chance.

There are a number of interesting things I picked out of your piece.

Overall, it was a great read and there's some really good stuff in it. Love the tools and I agree with a number of your key points.

Some food for thought though:

I think that the 20 hours vs 8 months is not a really good comparison. We do the AP course in less than one semester, so let's say 4.5 months.

20 hours maps to around 30 class periods. 4.5 months maps to over twice that but then our students are taking between 6 and 8 additional classes all with homework and other assorted assignments.

On the other hand, our kids have the benefit of time. I've seen plenty of kids go through cram programs, summer programs and the like and at the end they show of some pretty nifty stuff. Then it's all gone. It takes time for people to really "learn" something. If too much is compressed into to short a time, the learning is an illusion. I've seen it time and time again.

Now, working with a high-aptitude population mitigates some of this, but I've had to "save" enough kids coming through enough summer immersion programs to know that too much to quickly can do long term harm.

Another thing to consider is APCS itself -- not a great course. The College Board has done it's best to dumb it down and make it more and more vocational. It's much more of a programming course than a computer science one at this point.

That said, there are opportunities to get kids to think more deeply (see my post here for an example: [http://cestlaz.github.io/2013/03/23/Who_won_the_election- Qua...](http://cestlaz.github.io/2013/03/23/Who_won_the_election- Quadratic_to_Linear_Time.html#.VCq1TN-c2Ak))

Anyway, just some food for thought.

</comment><comment><USER15> I would agree that most AP CS students come from a background of CS. It was certainly less common for students in my high school (a private college-prep school) to randomly pick up AP CS to look good on their transcripts. Most had already an interest and experience.

I think there are two types of CS students, which are quite often reflective of preferred learning styles and life schemas: those who are far more intuitive learners, and grow and retain knowledge through doing (experience and practice); and those who need the rules laid out, so that they may digest them, incorporate them into their operational styles, and then figure out how to use them, push them to their limits, and break them. Both of these types of students possess the ability to operate from a place of creativity, but some have yet to develop gut intuition, and feel safer and more confident starting from a place of concreteness, and from there, launching into a more nebulous space.

I applaud the author for innovating the CS (and AP CS) curricula and teaching methodology. I think that it may very well prove more functional and effective for many students.

</comment><comment><USER16> Christina,

Firstly, I applaud your efforts, and I ask that you continue!

Now, I took APCS in 2012 as a senior in high school. It allowed me to place out of the introductory CS course at the University of Virginia, and it placed me onto a path of being a CS major.

We used a website known as eimacs[1]. This was quite similar to what you are doing (I believe). The textbook would introduce a concept, and then it would ask us to play with it in a built-in compiler. Immediate feedback was great!

Additionally, there would be a variety of the dry puzzles which you describe. Luckily, my APCS teacher realized the dullness of these tasks, and he assigned labs which were more fun.

I agree with the user "teach." Your process creates students who are 1) interested in coding and 2) can solve puzzles with code. It does not create students who are ready to take the AP CS exam. The difference is akin to students who do well in high school math courses but have difficulty with the SAT.

[1] [http://www.eimacs.com/](http://www.eimacs.com/)

<comment><AUTHOR> yep, that might be true today. my hope's that it creates students who realize they _can_ code, should they want to.

i see the AP test as a bit of a hack; while it'd be nice to teach everyone all of the codes, i found teaching high schoolers AP CS a more manageable place to start.

</comment></comment><comment><USER17> This is similar to how I learned javascript in almost REPL manner. Started with poking around in chrome developer console with quick copy pasting of code examples from stackoverflow / w3schools. Repeating and customizing until console logged what I wanted. With occasional diversions to understand compilerish.

And once it was working saving the code to the actual file.

My only regret was I discovered breakpoints a bit late. It was fascinating to pause code and just hover over different bits of code variables / parameters and see the data being transformed.

</comment><comment><USER18> The anecdote about electrical education 100 years ago is great, I never thought about the similarities. I think electricity was the high-tech industry of that time, all the cool guys were building generators instead of apps. A lot of big problems had to be solved (like connecting entire cities to a power grid), it seemed like a great and a rapidly developing industry to be in so it attracted people in the same way programming attracts some people now.

</comment><comment><USER19> _[T]he hardest part for these students was solving puzzles in English, not Java. Often, they'd skip to the Java, glossing over their logic._

Not only students. This is also the part of the process that most often trips up experienced programmers. The only difference between a beginner and an expert is the level of detail that gets glossed over.

</comment><comment><USER20> This is really cool. Have you thought about ways to scale this and make it available to others (not just students, but tutors / TAs as well)?

<comment><AUTHOR> a bit, though not enough. if you have thoughts you're willing to share, i'd love to hear them! (email@example.com)

</comment></comment><comment><USER21> Is the software demoed in the video the "TeachAPCS" thing? The site is currently down, but it looks like it is based on the github? I'd say it looks pretty spectacular!

<comment><AUTHOR> oops sorry -- [http://teachapcs.com](http://teachapcs.com) is back up. (and thank you!)

the software demoed in the video is still fragile, so it's not fully public yet. let me know if you're interested in poking at it though (email@example.com)

<comment><USER22> and down again! would really love to play with this thing. it looks great.

</comment></comment></comment><comment><USER23> Great tool and awesome writing</comment>


Any recommendations for a startup lawyer in Toronto? - <AUTHOR>

Also, what sort of business type would you recommend in Canada? <comment><USER2> Suzanne Dingwall Williams is highly recommended by the Waterloo community. I haven't dealt with her first-hand.

<http://venturelaw.blogspot.com/>

</comment><comment><USER3> i dont know who is the best ... u may talk to all and then decide ...

<http://www.cognitionllp.com/> <http://www.venturelawassociates.com/> <http://www.hyndmanlaw.com>

also read how to select an attorney @ [http://blog.blist.com/2007/09/10/startup-advice-selecting- an...](http://blog.blist.com/2007/09/10/startup-advice-selecting-an-attorney/)

edit: u may also have a look at VENTURE LAW LINE : [http://www.venturelawassociates.com/index.php?option=com_con...](http://www.venturelawassociates.com/index.php?option=com_content&view=article&id=16&Itemid=5)

<comment><USER4> All three of the above lawyers (Rob Hyndman, Suzie Dingwall Williams, and Cognition) are awesome.</comment></comment>


Ask HN: What technology is being reinvented lately after being dismissed? - <AUTHOR> Example<p>* WSDL - Swagger<p>* SOA - Microservices<p>* XML/JAXB - JSON/JSON Schema <comment><USER2> Build tools. Every language ecosystem has it's own version (or 10) of make. They're always inferior.

</comment><comment><USER3> REST/HATEOAS

[http://intercoolerjs.org/2016/01/18/rescuing- rest.html](http://intercoolerjs.org/2016/01/18/rescuing-rest.html)

[http://intercoolerjs.org/2016/05/08/hatoeas-is-for- humans.ht...](http://intercoolerjs.org/2016/05/08/hatoeas-is-for-humans.html)

</comment><comment><USER4> Was SOA really dismissed?

<comment><USER5> The underlying principals of SOA haven't been dismissed.

However, there have been some rather bad implementations of SOA that have been passed off as 'how to do SOA'. When enough people started using, for example, web-services without thinking about how to handle something as common as a network partition, those people became disenchanted with the terms SOA and micro-services.

</comment></comment><comment><USER6> * Truth</comment>


F.C.C. Considering Hybrid Regulatory Approach to Net Neutrality - <AUTHOR> http://www.nytimes.com/2014/11/01/technology/fcc-considering-hybrid-regulatory-approach-to-net-neutrality.html?ref=technology <comment><USER2> It's striking that Comcast so thoroughly dominates the US Government that the FCC has to approach 'solutions' from the position that they have to route around Comcast.

Hybrid systems always lead to a worst of both worlds outcome. Such systems are always designed not with excellence in mind, but with placation in mind. Someone with influence threw a tantrum at the proper solution, so the hybrid was introduced as a way to pacify them.

This is not how you lead the world in Internet connectivity and deploy universal gigabit+ broadband with no tax on Internet services (ie what we should be aiming for).

<comment><USER3> To say nothing of its merit, it looks like they're going to rely on the justification that reversing past deregulation policy would create a situation where their own past arguments would be used against them in court when the ISPs inevitably challenge their decision.

<comment><USER4> I'm thinking the ISPs will probably challenge it anyway. The impression I'm getting is a lot of them wanted nothing to do with Title II.

<comment><USER5> Except when it benefits them: [https://www.techdirt.com/blog/netneutrality/articles/2014103...](https://www.techdirt.com/blog/netneutrality/articles/20141030/07033428985/verizon- title-ii-is-not-answer-except-when-it-gives-us-massive-subsidies-then-its- totally-answer.shtml)

</comment></comment></comment></comment><comment><USER6> Awful. Instead of throttling Netflix at the backbone level, they'll do it in the local loop.

A single, neutral regime is the only viable one that doesn't mess things up.

The trick is how to NOT turn title II into a highly regulated service like the POTS loop, but into one the encourages competition within the bounds of traffic neutrality.

</comment><comment><USER7> "or to be vulnerable to criticism"

Let's not do this insanely important thing that may define the next hundred years of access to information because someone might say mean things about us??

</comment><comment><USER8> "The retail portion...which allows the consumer to access any legal content on the Internet.."

"legal content"

The real motivation lies in that sentence.

</comment><comment><USER9> "any use of Title II would be problematic."

For you, not for us.

</comment><comment><USER10> Nothing like installing the thin edge of the wedge from the start.</comment>


Reimagining electric utilities - <AUTHOR> http://www.vox.com/2015/9/11/9306247/utilities-21st-century <comment><USER2> As others have said most of this already exists for example in markets like Australia, the problem for the author is none of it actually makes solar etc work any better.

Voters dislike high electricity prices but they absolutely hate power outages and load shedding. Thats why the regulation in this area will always be cautious.

The market value of rooftop solar generation is close to 0 for the distribution grid as they still need to maintain existing assets for reliable generation, so any subsidy paid to those who can afford solar panels takes from either the pockets of those who dont have solar panels, or from taxpayers/shareholders.

The only way to shift to the distributed decarbonized model the author wants while maintaining reliability is to increase electricity prices. That should be the first sentence of any policy debate about this issue.

</comment><comment><USER3> I think the author may be missing out on some of the areas of the country where this is happening.

For instance, many places aleady have 'de-regulated' markets for energy. See FERC 888 & 889 [1]. And, states like Pennsylvania already allow consumers to choose between different distribution utilities.

Further, the Federal Gov't and DoE are pushing for things like microgrids and smart cities and smart buildings where local energy can be produced and stored and bought from and sold back to the grid [2] [3].

Traditional distribution utilities in many places are facing the 'renewable- storage death spiral'. That is, many customers can store and even generate energy cheaper than it costs to buy it from the utility. This causes the utility to raise rates, which then causes more customers to switch to local generation. Note that the residential market is just a small piece of the pie. You have to look at commercial and industrial, which normally get different rate structures, to see where things are happening.

Distribution utilities won't go away, but their model must change. Residential, Commercial, and Industrial will probably always need connection to the grid for safety reasons. Plus, distribution utilities are usually really good, and sometimes even efficient at laying copper and responding to outages.

[1]: [https://en.wikipedia.org/wiki/ISO_RTO](https://en.wikipedia.org/wiki/ISO_RTO) [2]: [https://www.whitehouse.gov/the-press- office/2015/09/14/fact-...](https://www.whitehouse.gov/the-press- office/2015/09/14/fact-sheet-administration-announces-new-smart-cities- initiative-help) [3]: [http://energy.gov/oe/services/technology- development/smart-g...](http://energy.gov/oe/services/technology- development/smart-grid/role-microgrids-helping-advance-nation-s-energy-system)

</comment><comment><USER4> While the author makes some good points, I can't help but feel he greatly exaggerates the current state of the power utility industry in North America to make his point. Fully vertically integrated utility systems have been on the way out for at least 40 years and very few, if any, jurisdictions don't already have some form of (a) real-time energy market and (b) open-access transmission tariff that ensures that if there is a local transmission monopoly, any generator can get non-prejudicial access to its power lines.

The author seems to be picking on a few edge cases, like small utilities fighting rooftop solar because they don't have the technical capacity to integrate it easily, and trying to expand that into an argument that the entire North American power utility landscape needs drastic reform into different functional entities - when that is already how the industry works. All of the things he suggests as if they are radical ideas - markets for balancing and other reliability services, generators bidding into a real-time market, the grid operator as an independent entity - already exist and have existed for at least 30 years. He literally describes the exact function of the California Independent System Operator (CA ISO) as if he came up with the idea.

 _" The utility's role in option No. 3 is to manage, but not participate in, those markets.

It would set up a kind of clearinghouse, where those who have power or services to offer register and those who need power or services come to shop. For instance, at times of high sun when solar power is flooding the grid, the value of solar electricity will fall, but the value of energy storage (to hold some of that surplus for later) will rise. So solar providers will be able to connect with storage providers, which will offer competitive bids.

The value of electrons (and other services like demand shifting, voltage regulation, or capacity reserves) will vary throughout the day, and from location to location, depending on grid conditions. So a key role for the utility will be to make that real-time price information easily available, so that market participants can make sensible choices."_

This is literally what every independent system operator in North America already does. CA ISO. New England ISO. PJM. ERCOT. And so on.

The roles of real-time system operation, long-term system planning, transmission ownership and operation, generation ownership and operation, and load-serving entities are already separate and already governed by market interactions through most of America, as well as Ontario and Alberta.

Utilities have lagged significantly in delivering the kind of market flexibility that already exists in the transmission and generation industry to the distribution arena, and allowing distribution-customer-owned energy resources to participate in the same real-time markets, but that's largely because of technical limitations and the fact, acknowledged by the author, that distribution is a natural monopoly.

The author also has some severe misconceptions about the nature of long-term power-system planning. He writes:

 _" The overriding idea is to, over time, replace central planning with markets. Rather than a utility deciding years in advance how much demand there will be, how much supply is needed, and how much it all costs, those decisions will be made on an ongoing, real-time basis by the dynamics of competitive markets."_

A nuclear plant that takes 10 years to build or a transmission line that needs 5 years of negotiation with landowners to secure the right-of-way, cannot and will not be built on the basis of a real-time market. This is why very few merchant transmission lines exist anywhere in the world. Long-term power purchase agreements are still needed to distribute the massive risk inherent in building something that costs tens of billions of dollars, has a payback period of 20+ years and takes a decade to build. This has nothing to do with markets vs central planning; something does not cease to be market-based simply because it is no longer real-time. Owners of major utility system assets need some means by which to insulate themselves from the risks of minute-by-minute price fluctuations when they are building infrastructure to last 50 to 100 years. Markets provide this through long-term fixed-price contracts.

I honestly feel like this article came from a time machine where the author just stepped out from 1960 because nearly everything he wants, already exists.

<comment><USER5> Maybe at the 100MW scale it already operates like this, but not at smaller scale. Recently I had a discussion with a county level public utility district where we were exploring building a 1-10 MW Solar system on a closed landfill. The capability existed for us to wheel the power to a load that was interested in the energy, but the smallest chunk of capacity we could buy was 1MW and the cost to wheel the power would require a >90% capacity factor to make it economical.

So the system may well exist, but I think there is benefit from some scaling down of the market rules.

<comment><USER6> As I read your example, it sounds like the problem is solar's low capacity factor, not scale. But maybe I'm not understanding the example.

<comment><USER5> Under the current regulatory schemes and market rules the low capacity factor of solar is absolutely a problem. I guess I'm saying that more flexibility for smaller systems to play in the markets will be important to increase renewable energy production. The advent of cost effective storage will obviously make the whole discussion easier.

</comment></comment></comment></comment><comment><USER7> Ubiquitous solar, wind, and batteries together with much more energy efficient buildings and devices will make traditional electric utilities mostly irrelevant. In the future, long or even medium length electric distribution will mainly be for back-up purposes. Nano/micro-grids will be more like commercial/consumer products purchased by neighborhood developers or individual homeowners, that integrate over common platforms, rather than utilities.

[http://tinyvillages.org](http://tinyvillages.org)

<comment><USER6> I could see some of this with solar, but not as much with wind. Wind does much better as large turbines--such a 1.5-2 megawatt turbines--not small scale stuff. One reason for this is that wind resources are much better at say 80 meters than close to the ground.

Plus, for wind to work well you also need a wide geographic area to even out some of the intermittency. That requires a big high voltage grid.

<comment><USER7> Rooftop mounted VAWTs do a good job of supplementing solar. The best VAWT designs perform at relatively low wind speeds. They do not need to compete with large systems mounted high in the air. You do not need a big high voltage grid when you have batteries for each home or group of homes.

<comment><USER8> Maybe, but not until the distant future.

We do not have the battery technology to make micro-grids feasible for the USA at large (much less the world). In fact, we don't even have enough known lead and/or lithium to build batteries to do this with today's technology.

Here's a good read on the challenges: [http://physics.ucsd.edu/do-the- math/2011/08/nation-sized-bat...](http://physics.ucsd.edu/do-the- math/2011/08/nation-sized-battery/)

<comment><USER7> That article is outdated. Its basing figures on an older technology in lead- acid versus Lithium and battery manufacturing has started exploding since then.

He also assumes the same level of inefficiency. With the technologies and policies in my plan, the U.S. can easily be 8 times more efficient.</comment></comment></comment></comment></comment>


Why Not Feeling Rich is Not Being Poor, and Other Things Financial - <AUTHOR> http://whatever.scalzi.com/2010/09/21/why-not-feeling-rich-is-not-being-poor-and-other-things-financial/

<comment><USER2> This is an interesting comment. But let me point to Tyler Cowen, who I found more insightful. He takes the same sentiment expressed by Scalzi, pushes it to it's logical conclusion and finds it lacking:

"Let's say you live in a country which has some rich people, some people in the lower middle class, and some very very poor people...In such societies, do the "lower middle class but not very poor people" have cause to complain? After all, some large group of others has it much, much tougher. ...At what percentile of wealth does your claim to complain go away or diminish? ... Can't a rich person point out that he has a higher MU of money than a non-rich person might think? Or must that necessarily offend others? What kind of genuflections must he package along with that information, so as to avoid being considered offensive? ... Beware of moral arguments which do not address "At which margin?" _I see a lot of attempts to lower the status of Todd Henderson, but not much real moral engagement._ "

I recommend reading the whole thing.

[http://www.marginalrevolution.com/marginalrevolution/2010/09...](http://www.marginalrevolution.com/marginalrevolution/2010/09/does- the-law-professor-have-a-right-to-complain.html)

<comment><USER3> Todd's lamentation is basically "but I'm not rich, if you have a look at my peers". After all, Todd's on a fixed salary, and there is little thrill left in his work if he's tenured, there's little bluesky left in his investments.

Sounds like he's going through a bit of a personal crisis.

Leave him alone. When he gets over this episode, he'll be fine.

<comment><USER2> "I see a lot of attempts to lower the status of Todd Henderson, but not much real moral engagement."

</comment></comment></comment><comment><USER4> Mr. Scalzi is a fine writer, but may not be a great reader. He completely overlooks the point of the article to which he referred.

To be sure, some of the criticisms he makes may be true. But to focus entirely on them, rather than the main point of the original article, is doing a disservice to those who really are more concerned with this issue than with financial envy.

So for the record, having followed the links to the original post, let me reiterate the intent. The "little guy" will be affected if the "rich" need to cut back. Luxury expenses (yes this is the point: it's a luxury to have a gardener or housekeeper) will be cut back, so anyone whose income relies on those expenditures will be hurt. In many cases, such as the immigrant gardener, forcing the rich to cut back causes a much more serious change to "downstream" incomes.

Of course, the number of rich people who really will react by cutting back, and the number of gardeners and the like who are affected by those cuts, is a matter of some debate. It may well be that in the balance, the harm is less severe.

But Mr. Scalzi doesn't even acknowledge that there is any debate. In this way, he's playing chicken with the rich, but the stakes will be paid by those who may be affected profoundly.

<comment><USER5> I would say, after reading the original post, that even this is unclear. Note that he says "Our combined income exceeds the $250,000 threshold for the super rich (but not by that much)" and also "At the end of all this, we have less than a few hundred dollars per month of discretionary income". I get the familiar feeling that Todd Henderson does not actually understand the concept of marginal tax rates. It seems like he's got enough buffer in his budget to handle a couple extra percent on the "not that much" he makes over $250k.

<comment><USER6> I've found most people don't understand marginal tax rates. Many seem to think that jumping up into the next tax bracket by even one dollar will make them make less money than they made in the lower bracket on less pay.

I was stunned one day when I heard my boss, a small business owner, say something to this effect over lunch, as well as another co-worker. I told them they didn't know what they were talking about and that's not how taxes work and he cited his years running a business as a reference and claimed I was naive and clearly wrong.

I bet him he was wrong and he took me up on it; after lunch I took him to our accountant and had him explain it, then pointed him at Wikipedia. Amazing that one can be an entrepreneur for 15 years and not know this.

Part of the problem is how we talk about taxes, we say things like _tax cut for people making less than 50k_ rather than the more correct _tax cut for the first 50k of your income_. The former seems to be talking about someone else while the latter clearly means _you too_ , while avoiding the us vs them mentality that seems to turn off most people's brains. I've made it a point to make sure everyone I know understands marginal taxes now.

<comment><USER7> It seems to me (as a biased observer) that a big part of the language/understanding deficiency here has just been that the GOP and its very effective messaging apparatus deliberately uses language that increases that confusion, and the Democratic Party is incompetently happy to adopt the same language, despite the clear harm to their platform.

</comment></comment></comment></comment><comment><USER8> One key element that is missing from much of this discussion is an understanding of comparative advantage and its importance to society.

If someone has the skill and ambition to succeed in a demanding professional career,isn't it better that they do so rather than doing their own gardening for fear of being judged? In general, it seems obviously good for society for a married couple to both work and outsource some of their domestic responsibilities that others can perform more cheaply. But our current (and even more, our future) tax code discriminates against this heavily.

<comment><USER9> _But our current tax code discriminates against this heavily_

Why? You can always make more money. A higher marginal tax rate is at most a minor disincentive since you still end up with more overall. Everyone likes to complain about taxes, but I think it's pretty much bullshit if anyone says they turned down an opportunity for more money because of the marginal tax rate.

A better argument is that the rich spend money more wisely than the government, which is at least debatable.

<comment><USER4> _A higher marginal tax rate is at most a minor disincentive since you still end up with more overall_

That's not necessarily true. As I point out elsewhere, there's much more going on than just ones top marginal rate. I pointed out the discontinuity when one hits AMT.

But also, more topical to this aspect of the argument, is the other expenses involved in employment. It may be that I'm still making 60% of my labor after tax. But in so doing, I also have to forgo the work that I'd been doing myself, and pay someone else to do it.

Most relevant is childcare, since it's something that one can't readily avoid if both spouses are to be employed, and is extremely costly. It's quite possible that the loss to taxes plus the expense of childcare together exceed the potential income of the second spouse. Indeed, I'd guess that is a leading reason for single-income families.

<comment><USER8> Yes, you've hit the nail on the head. Especially in the case of dual-income homes, there is a discrete hurdle you must overcome that makes the marginal tax rate misleading. In this context, you have to make $40-50k just to break even. Ouch. And working hard enough to justify a $100k salary to bring home $30k? That's a disincentive, in my book.

Even further, consider the impact that this tax structure has on people deciding to take on debt for higher education (ok, so that's frequently a bad idea anyway, but there have been other discussions about that). A smart single person might well decide to take on $100k (or perhaps even $250k as the law professor seemed to imply) to raise their lifetime earning potential. But then two smart single people get married. They would like to have kids, but what was originally a reasonable investment is now quite a handicap because of the fixed cost + marginal tax cost related to the second income.

</comment></comment></comment></comment><comment><USER10> The guy making over $250K can easily wind up just as bankrupt as Scalzi's sad sack who stumbles around dropping his mac 'n' cheese on the floor (grip the bowl firmly, people). Saying the higher income folks just have a money management problem is just plain wrong, unless you want to also admit that the sad sack guy has a population management problem because he's gone and had kids he can't afford to feed/clothe/educate properly. Both have made choices they can't support, and I think both are entitled to bitch about the end result (briefly; and then go do something about it).</comment>


Futurebox, lightbox without the JavaScript - <AUTHOR> http://www.thecssninja.com/xhtml/futurebox

<comment><USER2> Doesn't it loose one of the advantages of a JS version — the ability to lazy load, rather than loading all the full sized images on every page load?

<comment><USER3> Tangent: is loose a non-American spelling of lose, or is it just commonly misspelled?

<comment><USER4> It's an unfortunately common misspelling.

<comment><USER2> Haha, yes — I just spent 2 minutes scratching my head wondering if it was another British word which America 'simplified', as I found it in the dictionary and thought you meant 'loose' was a common misspelling of 'lose'; Only to realize, yes, lose and loose _are_ two words. Opps!

I think it's time for some sleep...as should probably always be the case when you loose the ability to differentiate words... :D

<comment><USER2> _"…case when you loose the ability…"_

How could I do it again?!

</comment></comment></comment></comment></comment><comment><USER5> Cool, but just in theory because of IE compatibility issues.

Hmm, I wonder if you could have done this without :target, using a:active. Drop an element inside of a link that is the lightbox container (#lightbox_container), set to display: none. Then, a#lightbox_link:active #lightbox_container would be display:block;.

I'm on my way out, but maybe I'll try it out when I get back. Using position: fixed on the lightbox container, it'd be IE7+ compatible. Position:absolute would be IE6+.

<comment><AUTHOR> Good theory I would be very interested to see your results.

</comment></comment><comment><USER6> Interesting, but the back button in Safari 4 goes back through all the futureboxes that were popped up and closed previously, as if each were its own page. Really annoyed me...

<comment><USER7> Hm, looks like a feature to me.

The problem i see is that all the images are loaded at once. Lightbox loads the big images on demand.

<comment><USER8> It _IS_ a feature. This is abused by most pure Javascript apps such as GMail. It's just carried over to this CSS implementation.

<comment><USER6> How is it abused by Gmail? The back button in Gmail works exactly like I would expect it to in a non-ajax app.

</comment></comment></comment></comment><comment><USER9> Now combine it with CSS transitions.

<comment><USER10> whoa cool <http://webkit.org/blog/138/css-animation/>

again, though, concerns about browser compatibility...

<comment><USER9> I know Firefox just added SVG-style CSS transformations. Does Webkit support those?</comment></comment></comment>


OneSec - A revolution in self-expression - <AUTHOR> http://www.indiegogo.com/onesec

<comment><USER2> I was entirely prepared to think it idiotic. But having watched Kevin Kelly's "one minute vacation" video (which they link), I'm now willing suspend disbelief:

<http://www.youtube.com/watch?v=OjD995hJKOM>

Of course, that video is shot and assembled by an expert journalist and photographer, and each one of the seconds adds to create a whole impression of a two-month trip.

So I think the challenge for them is helping the middle of the bell curve make something as good. A big challenge indeed!

<comment><USER3> I found that video very offputting. I couldn't linger on scenes I found interesting.

</comment></comment><comment><USER4> Good luck. That looks like a terrible idea, but good luck all the same.

Please share whatever lessons you learn in marketing and promoting, of course --I know we could always use another perspective on that side of the challenge.

<comment><USER5> Sir, I respect your sportsmanship. Challenge accepted: whatever comes of this, I'll do a post on both the technical and marketing challenges.

</comment></comment><comment><USER6> Is this real? I'm not trying to be mean, but 12Second.tv tried this (although 12x as long) and didn't do so well...

Times change I guess. And maybe 12x as short is 12x as cool.

<comment><AUTHOR> Oh yes, this is real. And yes, OneSec is 12x cool as TwelveSec. And dare I say it's going to be better executed? :)

<comment><USER7> Execution is everything. Instagram was well-preceded by Hipstamatic (and every other photo-service). Airbnb was a decade or so late after Craigslist.

</comment></comment></comment><comment><USER8> Perhaps I am very skeptical and cynical, but I am having trouble seeing this work.

I like the concept, I like what your vision is for it, and I like the example video you've done.

Problem? Video is incredibly expensive to host and serve, and even more difficult to monetize. What are your plans around that? A paid app? Advertisements? Magic?

Trying to keep an open mind, and I wish you the best of luck regardless!

<comment><AUTHOR> I guess YouTube and Instagram didn't worry too much about server costs and revenue models. I think it's safe to say they did ok regardless.

<comment><USER8> And how many tried before, during, and after YouTube and Instagram?

Many, many more.

</comment></comment></comment><comment><USER9> Really curious how this crowd-funding thing will go for you guys, could even make a case study! ;) I definitely like the product already.

<comment><USER5> At this point we're curious about it too. Still a long way to go. I promise I'll do a blog post with the things we've learned.

<comment><AUTHOR> I'm really looking forward to doing some more product videos and see what people think. I believe OneSec is one of these things that it's hard to explain but that you instantly grasp once you see it in action.

</comment></comment></comment><comment><USER10> Missed opportunity: promo video should have been 1 second long.</comment>


Training algorithms on copyrighted data not illegal: US Supreme Court - alok-g https://towardsdatascience.com/the-most-important-supreme-court-decision-for-data-science-and-machine-learning-44cfc1c1bcaf <comment><AUTHOR> SCOTUS denied the petition for writ of certiorari, thereby leaving the 2nd Circuit's ruling in Google's favor intact.

However, the 2nd Circuit's ruling is not binding on any other federal circuits.

Also, as Enginerrd stated, the holding is not nearly as broad as the article makes it out to be.

The holding was:

1\. Google's unauthorized digitizing of copyright-protected works, creation of a search functionality, and display of snippets from those works are non- infringing fair uses. The purpose of the copying is highly transformative, the public display of text is limited, and the revelations do not provide a significant market substitute for the protected aspects of the originals. Google's commercial nature and profit motivation do not justify denial of fair use.

2\. Google's provision of digitized copies to the libraries that supplied the books, on the understanding that the libraries will use the copies in a manner consistent with the copyright law, also does not constitute infringement.

Based on the above holding, I think the article's conclusion is a stretch for general training algorithms using copyrighted data because: (1) there would not be a library supplying the information to the training algorithm, (2) there would be no similar display of snippets, and (3) we do not know if a training algorithm would provide a market substitute for the copyrighted data.

<comment><USER2> While the decision is only binding in the 2nd circuit, the precedent is admissible in other courts. If this goes to trial in a different circuit you can bring the finding to the judge who will consider it - it won't be binding, but he will consider it. If it goes to appeal in a different circuit the next circuit will reference this in their decision - if they decide the 2nd is wrong they will be very clear why the they think the 2nd circuit is wrong when they make ruling (and this can in turn be re-submitted to the 2nd circuit who might change their mind if the reasoning is good enough). If this goes to the supreme court in the future they will read this decision and it will influence them - again they can decide either way.

<comment><AUTHOR> Yes, the 2nd Circuit's decision is persuasive authority for other circuits. However, that's not what the article claims. The article claims that SCOTUS ruled when it, in fact, did not.

<comment><USER3> SCOTUS ruled on the cert petition; what people may not understand is that while that is a ruling, it is (and there is explicit precedent on this point) not one which has precedential weight (even as persuasive authority) as regards the merits of the issues addressed in the lower court ruling.

<comment><USER4> Isn't it unlikely that a case will be granted cert if appeals courts in different circuits are in agreement? I.e. not a circuit split? So while not legally binding, it might be in practice indicative.

I wonder, does this mean I can scrape Instagram/Facebook for photos and use them for face recognition? Is that 'fair use'? Is an Instagram post a publication?

<comment><USER3> > Isn't it unlikely that a case will be granted cert if appeals courts in > different circuits are in agreement?

As I understand, it's generally viewed to be th case that a circuit split makes cert. more likely, sure.

> So while not legally binding, it might be in practice indicative.

I guess that it's indicative that, barring change in membership of th court, cert. would likely be denied in a future case raising the same issue from the same or a different circuit with the same result.

It definitely should not be seen as indicative of anything on the merits other than that the members of the court don't see it as obviously and urgently wrong.

</comment></comment></comment></comment></comment></comment><comment><USER5> Towardsdatascience.com is rapidly rising on my irritation meter. Tons of submissions to HN of questionable value. This article is worse than most, the person interpreting the ruling does not appear to have a legal background and has essentially twisted the ruling to support his foregone conclusion. I'd love for an actual lawyer (paging Rayiner) to interpret this and to see whether or not any such far reaching conclusions are supported by the ruling the article is about. I've read the ruling and I've come to the conclusion that it makes no such statement but since I'm also not a lawyer you should assign as much value to that opinion as to the article itself.

<comment><USER6> Medium hosted articles in general tend to have both low quality and value. It's a very shiny platform which hosts a massive amount of really poorly reasoned articles.

</comment></comment><comment><USER7> We probably need a technical rather than legal solution for this. The problem is that generative algorithms are susceptible to accidental memorization so you can't guarantee that the output will be transformative. For example, play with [https://talktotransformer.com](https://talktotransformer.com) to see how many well known pieces of text it can spew out verbatim. It is very prone to derailing into a harry potter fan fiction regardless of prompt.

Other than copyright there are privacy considerations too. For example Gmail's Smart Compose is trained on users' private messages so you don't want it to memorize "private" details (such as credit card numbers): [https://arxiv.org/abs/1802.08232](https://arxiv.org/abs/1802.08232)

Is it possible to solve this by adversarially checking if the output is "original" enough or not? Or is that intractable, given how much resource our society already pours into making the same classification in court?

<comment><USER8> This point is extremely important, particularly in the healthcare field (which I happen to be in at the moment). We have to be very, very positive that our deidentification process is thorough and accurate to prevent a HIPAA violation from occurring.

<comment><USER9> > We have to be very, very positive that our deidentification process is > thorough and accurate to prevent a HIPAA violation from occurring

If your model is any more useful than something trained on coarse aggregates, then it can be used to reidentify individuals. This is a pretty hard dilemma in the entire industry, not just health.

I hope my observations are skewed, but instead of trying to seriously address this issue I've seen an entire legal-loophole style data laundering industry emerge where highly identifiable information changes hands without it 'technically' changing hands in the legal sense. I'm talking about entities like datarepublic.

<comment><USER8> It really is a complicated topic, and one we spend a lot of time thinking about. We're using a peer reviewed method for removing PHI identifiers, and are combining that with an approach that involves using the least amount of data possible to get results. Our models will also never be released to the public, but instead will have an API where we can see abnormal behavior (such as sending lots of requests to try and tease out other information) and intervene.

<comment><USER4> Other than easily controlled walled garden type accesses it is hard to limit with throttling.

Is there a way to determine how much information about a particular individual has been leaked out?

</comment></comment></comment></comment></comment><comment><USER10> This isn't nearly as broad a precedent as the title sounds.

They used some pretty reasonable tests of copyright infringement to conclude that no such infringement occured.

</comment><comment><USER11> If this legal theory is correct and upheld, possession of data will be pretty important. So all those data you licensed for one reason or another might be able to be used to train.

I think the logic makes sense because imagine if humans were prevented from getting ideas from watching movies. It seems similar to not letting AI watch every movie ever and learn.

<comment><USER12> It sounds like to get the data into their AI, Google had to make copies. They digitized the physical books, and then trained using those copies they made. Also, their system included excerpts from the books which it could retrieve and show users.

Hence, they had to use fair use to justify it.

I think if you could train the AI without having to make a copy first, such as having the AI read the physical books directly, or in the case of your movie example having the AI watch the movie on a TV hooked up to a DVD player playing a copy of the movie on DVD that you bought from a retailer authorized by the copyright owner to sell such DVDs, you might not even need to make a fair use argument.

The definitions section of the US copyright statutes, 17 USC 101 [1], defines "copies" like this:

> "Copies" are material objects, other than phonorecords, in which a work is > fixed by any method now known or later developed, and from which the work > can be perceived, reproduced, or otherwise communicated, either directly or > with the aid of a machine or device. The term "copies" includes the material > object, other than a phonorecord, in which the work is first fixed.

and "fixed" is defined like this:

> A work is "fixed" in a tangible medium of expression when its embodiment in > a copy or phonorecord, by or under the authority of the author, is > sufficiently permanent or stable to permit it to be perceived, reproduced, > or otherwise communicated for a period of more than transitory duration.

An AI reading or watching the work as one of many many works in order to learn weights for a neural net does not result in a material object from which the work can be perceived, reproduced, or otherwise communicated. Thus, there is no copy, and hence no copyright issue.

[1] [https://www.law.cornell.edu/uscode/text/17/101](https://www.law.cornell.edu/uscode/text/17/101)

<comment><USER5> > "does not result in a material object from which the work can be perceived"

This does not hold true in all cases. Note that the ruling lists the end goals as 'fair use' goals and that that seems to have been an important part in the conclusion reached.

The key thing to strive for in creating derivative works that are deserving of copyright protection in their own right is that they contain 'substantial originality', mere machine transformation does not qualify.

<comment><USER13> > mere machine transformation does not qualify

That minimises the contribution of thousands of researchers in designing the models and their training regimens.

</comment></comment></comment></comment><comment><USER14> From a 2016 refusal to review a case

</comment><comment><USER15> I mean, why would it be? We train ourselves on copyrighted material all the time.

</comment><comment><USER16> We should be surprised that nine non-technical people are making technical decisions that impact 300m people. It seems that legal decisions are increasingly scope-creeping into domains where domain experts are necessary. This is even more evident after seeing the Zuck-Congress hearings, where Congress proved to the people that they aren't really the best people to work on technological issues.

</comment><comment><USER17> Misleading title. SCOTUS refused to hear the case. They didn't rule in Google's favour.

</comment><comment><USER18> Is using pirated or otherwise illegally acquired data to train an algorithm legal? If yes then why is it illegal to use it for other purposes?

Is it legal to use the data to train an algorithm if the license disallows that explicitly?

<comment><USER19> Does copyright law actually make it illegal (as opposed to just frowned-upon, and maybe hindered by one's ISP) to receive pirated material? I was under the impression that the illegal part was the distribution of it.

<comment><USER3> > Does copyright law actually make it illegal (as opposed to just frowned- > upon, and maybe hindered by one's ISP) to receive pirated material?

Receiving, strictly, no. However with digital material, most use involves copying; for legitimate copies that copying is covered by an implied license for the normal use of the work, for copies which are not themselves authorized, there is likewise no implied license for use.

Also, _receipt_ of digital copies itself often involves copying directed by the receiver, which is prohibited, and may even involve a request from the receiver to the originator to make the copy under circumstances which would be viewed as knowing that it was unauthorized, which, may often, as a solicitation of an unlawful act, itself be illegal.

</comment></comment></comment><comment><USER20> Could this be used against Google? E.g. train an algorithm from their road traffic information (fetched legally via their API or web UI) to improve rough time estimates based on OpenStreetMap data.

<comment><USER3> > Could this be used against Google? E.g. train an algorithm from their road > traffic information (fetched legally via their API or web UI) to improve > rough time estimates based on OpenStreetMap data.

No, because then contractual ToS, not naked copyright law, will be at issue. Even if Google doesn't have the right terms to forestall this now, it's a trivial change for them to adopt.

</comment></comment><comment><USER21> Anyone know of any organizations working to repeal Intellectual Monopoly laws? I know there are organizations that try to counter the influence of the IM industry like EFF and FSF, but I'm looking for groups that have come out and said Intellectual Monopoly laws need to go, period.

<comment><USER22> Pirate Parties worldwide. Sometimes they even get seats in parliament.

</comment></comment><comment><USER23> Somebody know the situation in EU for that?</comment>


U.S. preparing to sell over $2 billion in weapons to Taiwan, testing China - <AUTHOR> https://www.reuters.com/article/us-usa-taiwan-exclusive/exclusive-u-s-preparing-to-sell-over-2-billion-in-weapons-to-taiwan-testing-china-sources-idUSKCN1T62CA <comment><USER2> I don't think this is a "test". The US is the main arms supplier to Taiwan and has been for a long time. It's a new sale, but not any significant change in policy nor a surprise.</comment>


Gig Workers Are Here to Stay. It's Time to Give Them Benefits - <AUTHOR> https://hbr.org/2020/07/gig-workers-are-here-to-stay-its-time-to-give-them-benefits <comment><USER2> The premise is 100% spot on. The bigger question is-- is there a market for all the ridesharing and food delivery businesses at 2-3x the cost? These services have seen subsidized rates for so long, any consumer remotely price conscious will have sticker shock.

The article focuses on unemployment benefits, but that's scraping the surface. Health care and paid family leave need to be included in benefits packages as well.

</comment><comment><USER3> At the moment, there is no barrier to entry in to become a gig worker, besides a car and the ability to drive.

If you force companies to give benefits to these Gig workers, they will not be able to continue in this way (because it will be too expensive) and there will now be a limit on how many drivers they will be able to hire (since they are now essentially employees).

The end result will be less people hired as gig workers and more restrictions on who can actually be a driver, which will leave out a large portion of people driving right now without the ability to make any money at all.

With all of the restrictions that are being put into place on companies like Uber and Lyft, we will eventually go back to what we had with cab companies where the medallion holders have a monopoly on the entire industry and we see no advances that actually improve the consumer experience.

I never understood why Gig workers should get any benefits. When deciding to actually work, it's understood by all parties that you aren't an employee and there really is no guarantee of income.

I've been contracting for a decade and pay for my own benefits. I weigh all costs and benefits before signing a contract/doing any work and everyone should educate themselves and do the same.</comment>


Ask HN: How to buy an office server? - <AUTHOR> We think we want to buy a server for our office, but have no idea how to go about it.
We're an AWS team, we've never had a physical server before. We've got a scalable setup on AWS with 10 or so different types of machine ("layers") that make up our pipeline.
In the office, we all use Mac Minis running Ubuntu or laptops running OSX.
During development, we run a set of VMs on each of our local machines that gives us a scaled-down copy of the real system, and we feed very little data through it, so it can handle it.
Recently we've been adding layers to the system, though, and it's getting pretty out of hand. Whilst we can still run the VMs, even with tiny amounts of data flowing through it, it absolutely crawls.
We've tried testing remotely on a clone of the live setup, but the save-code-to-seeing-results latency's a killer.
We're thinking the solution is to get a nice big server with a few hundred gigs of RAM and a dozen processors or so, pop it in our office and offload the VMs onto that. Then we can share a disk with it over a hard wire, the latency will be nothing and it'll run like a dream.
The problem is, we know how to think about servers in the AWS sense (like (this)[http://www.ec2instances.info/?cost=monthly]) but there doesn't seem to be anyone selling servers like that, there are all these fragmented deals that say things like "up to 512Gb RAM" and talk about the types of processor, rather than their specs, and when you do find a good catalogue, it doesn't have any prices on it!
Does anyone know how we can find a server that suits our needs at a decent price? Has anyone done it before? Is there a whole world here that we simply don't understand?
Thanks! Toby <comment><USER2> It's really a matter of deciding whether you want to buy prebuilt or just build it yourself.

For what it's worth, I find the former option is much better if you intend on having a large number of similarly spec-ed servers (since the vendor will have nice management tools designed to make your life easy) and the latter option is much better if you need very specific configurations (eg; bleeding-edge hardware) or you're reasonably competent at IT and want to save $$.

What's your budget?

If < $4k you'll want to go dual socket. Xeon E5's are topping out at 22 cores per socket nowadays. You'll find the price sweetspot around 12 cores/socket.

If > $5k you can go for the Xeon E5-4xxx series (which if you want to wait for Q2'16 are getting a slight speed bump) in the V4 models. You'll get up to 18 cores/socket but the price sweetspot is still around 12 cores/socket (gives you 96 logical threads in linux).

Most decent server motherboards for these processors will support 512GB+ DDR4 ECC RAM. Again, supermicro is a good bet. Just make sure it's a server and not workstation motherboard (it should have dedicated IPMI). If you're planning on running something storage intensive, spring for a MOBO with built-in SAS adapter.

Then you'll be better off dockerizing your application instead of spinning up a bunch of VM's. Why? You get easy shared access to disks, much lower overhead, you can easily use a cloud builder like quay.io, and if you want to deploy to AWS or your own server your code is guaranteed to run identically.

For what it's worth, I currently run highly networking and CPU bound trading programs in a containerized environment and it's been wonderful. Much easier than VM's and much lower overhead. Plus you can mess with the networking to your heart's content (made easy by using pipework).

</comment><comment><USER3> If you're not comfortable building your own, I'd start with a workstation from Dell or HP (e.g. "Dell Precision Workstations"), choose the _smallest_ amount of RAM they offer, then buy RAM yourself to get the amount you need (make sure the base machine supports that much RAM). Dell and HP always massively overcharge for RAM upgrades compared to the cost of buying it yourself.

In general you can't put a dozen processors in a server. You could get that many _cores_ with something like two eight-core Xeon CPUs easily.

</comment><comment><USER4> As I'm sure you know, you'll need to pre-select how much memory, storage, and CPU power you'll need. This offer may fit your needs. You'll find some specifications on this link, and there is an option to customize it. It may be useful to call their hotline and talk to a consultant.

[http://www.dell.com/us/business/p/poweredge-t630/pd](http://www.dell.com/us/business/p/poweredge-t630/pd)

</comment><comment><USER5> PM sent to the email address listed on your profile.</comment>


Poll: What's Your Favorite IDE for JavaScript? - <AUTHOR>

I know there's a ton of debate on this, but I'm trying to get an idea of what the community thinks _overall_
Please list any ide you like. Also, list any ide you do not like and if there's enough results, I'll post an edit with a like/dislike ratio.  I know there was a previous poll for favorite IDE, but it didn't mention language, which seems like an important distinction to make.
Also on reddit - http://www.reddit.com/r/javascript/comments/2m3rsh/poll_whats_your_favorite_ide_for_javascript/ <comment><USER2> I don't use an IDE.

Text editing is done in Vim.

Debugging/profiling and quick prototyping are done in the browser using a mix of built-in dev tools and extensions.

<comment><USER3> Me too. Especially for Linux development and quick edit in the server or vm where space and memory might be limited.

</comment></comment><comment><USER4> I've become a huge fan of Webstorm since focusing on developing MEAN-stack apps. 30 day trial, and $50 for a license. Not too bad if your dev activities are generating income.

<comment><USER5> I can only second this. Webstorm hands down.

<comment><USER6> I will go ahead and give it a third. The javascript debugger is amazing. I believe it also has an extension for chrome that allows you to debug front side code in the debugger.

</comment></comment></comment><comment><USER7> After going through what seems like every editor ever made i have finally settled on Emacs. For javascript I sometimes use js2 mode.

<comment><USER8> Are there any other packages you would recommend?

<comment><USER7> For web development I absolutely love emmet mode. Some times web mode can come in handy (for templates like mustache etc). Also emacs has lots of functions to jump around tags. So if you can,loot into them ( Disclaimer: I have been neglecting this for far too long!) And finally if you use firefox then it's all text plugin can be a life saver. It allows you to type comments from your favourite editor.

What about you? What plugins do you use?

</comment></comment></comment><comment><USER9> Atom.io is a nice one that's similar to Sublime Text - again comes with linting. Has a slight issue of 2MB being the largest file that it can handle, but otherwise very nice.

I just use Netbeans though as its my main overall IDE

</comment><comment><USER10> Sublime Text 3 for me. It's not really an IDE but you can make it like one by using extensions such as SublimeLinter, build tasks and SublimeCodeIntel (which I sadly can't get working)

<comment><USER11> >SublimeCodeIntel

If you're using it for code completion, then you should try the "Better Completion" plugin.

</comment></comment><comment><USER12> On a Mac: I'm a big fan of Sublime. The only things I don't like are the counter-intuitive keyboard shortcuts.

On a PC: Notepad++

In the terminal: vi or vim

<comment><USER9> After having used Notepad++ for years I've switched to Sublime as its cross platform and has linting. I agree with you on the shortcuts though.

</comment></comment><comment><USER13> I mostly use Brackets in my work and it's really good for editing JS files and has a lot of stuff like themes and plugins.

</comment><comment><USER14> Been using VIM for all coding. Recently started using Adobe Brackets & I like it. I might switch to it.

<comment><USER15> Brackets is really good, yes

</comment></comment><comment><USER16> VIM

</comment><comment><USER17> VIM.</comment>


HackerNewsers now supports Google Talk, Skype, Twitter, Stack Overflow - <AUTHOR> http://hackernewsers.com/users.html?User[city]=York&User[countryId]=826

<comment><USER3> Sorry for nitpicking, but it's not Google Talk, it's XMPP (aka Jabber). Google Talk is just one of the many interconnected and interoperable XMPP services, but there are many others as well: <http://xmpp.org/services/>

<comment><AUTHOR> hmm, that's true but I rely on Google Talk to provide the online/offline badges, if you know of any services that will provide the same functionality I'd love to hear about them.

<comment><USER4> I'm not sure how difficult it would be to create, but you could have an XMPP bot request presence subscriptions from all users who enter usernames.

Hmm, this sounds like an interesting problem.

<comment><USER3> Problem is that more often than not to be able to receive presence updates, you need to be on the presence ("friends") list of the other party, you can't just request the presence of any user in XMPP world. Even if you could, it take a few seconds, which is a very long time in the lifetime of a web request.

</comment></comment></comment></comment><comment><USER5> Would be good to import SO points, and then be able to run a search on say HN points and SO points. Perhaps Twitter stats too.

<comment><AUTHOR> I do collect the SO reputation score so this is possible, lets see how many upvotes your post gets and if enough people agree I'll do it.

</comment></comment><comment><AUTHOR> The skype and google talk badges combined with timezone search should help with the problem of finding people to talk to / bounce ideas off who are online right now. If anyone wants other IM protocols supported, post them here and I'll see what I can do

</comment><comment> mike-cardwell I don't want to spam all my twitter followers with a link to your website just so you can confirm that a twitter account belongs to me. Isn't there a better way of performing the confirmation?

<comment><AUTHOR> You can put the link in your twitter profile instead, or delete the tweet after. I'll make that clearer

<comment> mike-cardwell Cool. Putting it in the web field in my Twitter profile temporarily, worked.

</comment></comment></comment><comment> mike-cardwell FYI, the password reset email from hackernewsers to me was delayed because the mail server host IPv6 address [2002:c125:989e:b:219:66ff:fe07:22e7] doesn't have any reverse DNS set up. Should really have FCRDNS.

<comment><AUTHOR> thanks, I'll look into it

</comment></comment><comment><USER6> Bug: If you simultaneously add twitter and stackoverflow information, and it asks you to authenticate, and you authenticate one of those, all the "other public profiles" information is lost (not saved). You have to authenticate twitter by itself, then SO.

Suggestion: Could I have my bio at the top? My bio is far more important for stating my value proposition than a list of cookie-cutter skills. Also, the skillset should be collapsed and not take up so much vertical space.

<comment><AUTHOR> investigating... thanks

Edit - moved the bio to the top, will see what I can do about the skills

</comment></comment><comment><USER7> Congrats on the site - it looks like you are getting some traction.

Just a suggestion, but you may want to clean up the skills list. Letting the community add their own skills (rather than suggest) causes the list to get really messy in a hurry.

Example:

      Ruby
      - <USER2>
      - webapp development
      --- Programming
      ----- XProc
      --- sinatra

<comment><AUTHOR> Thanks, you're right about the skills, at the moment merging duplicates is a bit of a pain, I'll have to make it easier.

</comment></comment><comment><USER8> Love the speed that you work at, getting out this MVP in what was it 14 hours or something? plus it looks great too. This is what I always struggle with, I can get a MVP out quick but it will look rough.

</comment><comment> tomh- Linking Stackoverflow accounts doesn't work, I tried copying the link, but verification fails.

<comment><AUTHOR> hmm, strange, does it work if you try again now?

</comment></comment><comment><USER9> hbrgcduhrfzefubu

</comment><comment><USER9> hufrjbgvugtegewaszuty</comment>


A new way of playing Japanese and English games side-by-side (2016) - <AUTHOR> https://legendsoflocalization.com/a-new-way-of-playing-japanese-and-english-games-side-by-side/ <comment><USER2> Instant, in-software, translation is an amazing way to learn languages and I can't congratulate the author enough on his implementation. The Guild Wars MMO had a similar functionality built-in that allowed the player to press Ctrl to show the whole U.I in another language. When letting go it'd go back to the primary language. Don't know why they implemented that but it got me 80% of the way to fluency in English. I implemented something similar for the Kindle Reader and I use it often to learn Japanese and Korean.

If people have other examples of software with this functionality I'd love to hear about them.

<comment><USER3> > I implemented something similar for the Kindle Reader

Hey, that's awesome, do you have a github repo for the Kindle Reader change/companion app? I learn Chinese using Kindle and the native app experience for that is really terrible. I have to highlight lines I don't understand which takes a long press and selecting the start and end, copy them, then Google Translate pops up. After enough lines are copied, Kindle refuses to let you highlight more, so then I have to long press again and delete the line to avoid hitting that limit. Long press to see translation would be so much faster. I wish it was like desktop software where there's plenty of browser plugins to show you translations on mouse hover.

</comment></comment><comment><USER4> Here's an article from the same site from last month showing additional progress that's been made on this tool, now called Wanderbar: [https://legendsoflocalization.com/wanderbar/](https://legendsoflocalization.com/wanderbar/)

</comment><comment><USER5> Interesting concept. I only skimmed, so maybe the rationale is explained in the article, but I'm a bit surprised by the "reverse subtitle" design aspect. That is to say, rather than seeing the original language by default and getting some side-bar with translated text to help you over bumps, you play the translation with a gloss of the original text in a side bar. So by default you kinda need to put your eyes where the translated stuff is.

Isn't that noticeably less efficient if the aim is learning the original language?

</comment><comment><USER6> A word by word replacement would be great. For example in an RPG, begin in all English but as you go on begin to slowly replace common words (with explanations as necessary); then later begin to fix grammar and sentence structure.

I recently read Shogun and it's pretty interesting how you pick up a few bits of the language here and there.

</comment><comment><USER7> For those who aren't familiar with the author, Clyde "Tomato" Mandelin is one of the most well-known video game fan translators. He's probably most famous for being the lead for the Mother 3 fan translation, and last I heard was working officially as a translator for Nintendo.

</comment><comment><USER8> This hit a happy comfy sweet spot. The right level of hack for me. Fighting randomness, iterative development, and unique solutions (create your own enemy names from attributes). Very organic development. One of those 'sum is greater than the parts' efforts.

</comment><comment><USER9> I wonder what kind of effort went into fitting the dialog into just 182 kanji, I suppose a lot of words were in kana that would not otherwise be.

</comment><comment><USER10> I think I read somewhere people already developed a new ML system to live translation in-game text, but forgot where.</comment>


You Can't Actually Create A Google Account For Your Kid - <AUTHOR> http://techcrunch.com/2011/05/09/attention-dear-sophie-inspired-parents-you-cant-actually-create-a-google-account-for-your-kid/ <comment><USER2> It's not really Google's TOS that's the issue here; it's called COPPA regulations which apply to everyone on the internet (in the US). [http://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Pro...](http://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Protection_Act)

<comment><USER3> That law says that parental consent is needed to collect info from kids under 13. The article references a case where clearly the parent gives consent to have an account.

<comment><USER2> _Website operators must use reasonable procedures to ensure they are dealing with the child's parent. These procedures may include:_

        obtaining a signed form from the parent via postal mail or facsimile;
        accepting and verifying a credit card number;
        taking calls from parents on a toll-free telephone number staffed by trained personnel;
        email accompanied by digital signature;
        email accompanied by a PIN or password obtained through one of the verification methods above.

I don't really see it feasible for Google to do any of those things just to set up a gmail account.

<comment><USER4> I believe it is

"You must sign in with your google checkout account, which must have an active and verified credit card, to make this account for your kid".

I think a demo of this is a 2 week project tops to tie the verification to your account creation.

</comment></comment></comment></comment><comment><USER5> You probably can't create a google account for your cats either, but that didn't stop me from making each of mine one (only so they could sign up for facebook though ;-3).

How is this newsworthy?

(p.s. any facebook employees, please don't delete my cats' facebook accounts, they will be very sad and scratch you up big time if you do)</comment>


Business Ideas for kids: How to make $10 - <AUTHOR> I got a gig writing the curriculum for "Kids Entrepreneurs" and I need ideas on how kids can make their first $10; the caveat there is that it should give them an idea about:
* Profitability: it can't be "sell your $100 games or parents' stuff"
* Sourcing: best not be a 1-off
* Scalability: can't be something that doesn't scale well like... mow your neighbors' lawn undercutting professional landscaping companies
I've got down so far"
1. start an informational blog and put AdWords/Affiliate 2. Design and sell stickers online (lame but it builds the concept of BRAND)
That's all I got. ANything else? <comment><USER2> I sold used golf balls, I was lucky to have a golf course just out the back door. You'd be surprised how many golf balls get abandoned just off the course, so I'd go for a walk after dinner when play slowed down and collect the abandoned balls. Then sell them depending on their quality, some of the valuable ones for upwards of a couple dollars.

Scalable in the sense that supply was consistent. To truly scale, if I were doing it today, I would've built a website providing reviews of different balls and manufactures, so your recommendation for an informational blog. But I think the key here is developing expertise in something by being boots on the ground before trying to build something bigger.

</comment><comment><USER3> i made my first 10€ at the local fair. they offered food on a plate and wanted a 1€ deposit for the plate. people are lazy and dont want to wait in line to get their deposit back. thats where we got in. we just took their plates, offered them their deposits and most of them just said "keep the money". the view of a bunch of 8 year olds with 10 plates each at the deposit station must have been glorious :D

</comment><comment><USER4> Well... the obvious normal ones are baby sitting, house sitting, yard work, mowing lawns, painting walls etc etc etc. And of course the venerable news paper route.</comment>


This Is Your Brain on Magic Mushrooms - <AUTHOR> http://www.popularmechanics.com/science/health/nueroscience/this-is-your-brain-on-magic-mushrooms-17364842

<comment><AUTHOR> The article has a bad link to the research, here is the actual link: [http://rsif.royalsocietypublishing.org/content/11/101/201408...](http://rsif.royalsocietypublishing.org/content/11/101/20140873)</comment>


Meet Tim Cook: The Man in Charge of Apple - <AUTHOR> http://blog.wired.com/gadgets/2009/01/meet-tim-cook-h.html <comment><USER2> Good article. It's about time people realized Apple is more than El Jobso.</comment>


Four Reasons Taxpayers Should Never Subsidize Stadiums - <AUTHOR> https://www.bloomberg.com/opinion/articles/2018-07-16/four-reasons-taxpayers-should-never-subsidize-stadiums <comment><USER2> [https://news.ycombinator.com/item?id=18832975](https://news.ycombinator.com/item?id=18832975)

600+ points</comment>