"In the work world, collaboration and team work are essential to success; in school, it's called cheating."
I would think that students who collaborate on schoolwork or studying are very institutionally fluent and aren't really at risk of the institution stepping over them and calling them cheaters.
I see the college cheating industry as a trade between wealthier cooler kids and the smarter disadvantaged kids, which I suppose is also life in most places, China or US.
The point of school (American school, at least) isnt to learn, its to get a good grade. When the goal is a number, than 'cheating' is simply trying to achieve the goal.
If the goal was to actually learn, the "cheating" that you see in schools would become "collaboration" - much like in a workplace with quotas and ridiculous metrics, people will cheat the system - in a workplace who values output quality first, you end up with collaboration between employees to reach that goal...
The problem is - 90% of us went through the school indoctrination of "the grade is the goal" ... and carry a lot of that mentality out into the work force.. and at worse, many of them start companies and align their business goals for their employees with that same standard..
I think we all remember that kid in school (or college) that joined a group and coasted to grade. I know those people where I work, too. They know little and contribute nothing. We do not serve them by letting them get out of school without the knowledge they need.
So I agree that grade-centric education is poor, but can also not reject either rote learning or evaluation as being an important goal.
Aka Goodhart's Law[0].
These are all goals which are harmonious to societal health.
This so that said someone can be slotted into place in the company production line.
I disagree. Plenty of times through school I heard complaints of "When will I need this in the real world!" and numerous comments online complaining about education (particularly arts and social science curricula in university) not preparing people for jobs.
Plenty of things I learned in primary school, high school and in my Engineering degree are not applicable to my day job but did make me a more educated person.
It's funny to witness the education system get simultaneously criticised for not preparing people for the workforce and also only preparing people for the workforce.
It doesn't matter. There must be something that can be taught to you and later used to grade you. Whether it's maths or arts or history of the good deeds of Comrade Stalin, it doesn't matter. What matters is the series of filters, at the end of which is entering the job market. Even the parents don't care what you're being taught - only that you are good at it, so that you can go to better higher-level schools, and get a better diploma at the end. Only few parents and teachers with ideals give a shit about the actual content of the education material...
As for job usefulness, 90% of stuff you'll have to learn on the job anyway.
Of course. Education is about laying the foundation, giving you a bounty of contexts with which you can make faster associations and more quickly learn what you need for the job.
Both of these are correct - and they corroborate my point. The skills taught, they don't prepare you for a real world job - they teach you to stay in line, as few questions, and do what you're told. Thats what you need to be tought to work in a factory or plow a field... or stand behind a cash register.
They don't prepare you for "good" jobs... they prepare you for menial jobs. If everyone came out of high school with real knowledge and real skills, nobody would run the cash register at the gas station for minimum wage...
--Anyone who's experienced it
Cheating and collaboration are not the same. If you've ever taken an advanced math/cs/STEM class you've collaborated often on problem sets, they are often too hard to do alone. But you shouldn't have cheated.
But how do you then assess whether each individual in the group learned that important concept, or if they just all agreed with the one (and only) student who actually learned/knew it?
http://montessoriguide.org/assessment/
Seems to produce good results:
http://blogs.wsj.com/ideas-market/2011/04/05/the-montessori-...
Its akin to evaluating how someone would do something in the middle of the jungle without tools or support. Sure, you will be able to know who does better in that setting, but what conclusion can you bring of that?
Or the surgical team where everyone "collaborated" on basic anatomy.
You are comparing people that dont know to people that know with that allegory. In a collaborative setting you would be able to see what people build, teach each other, and learn.
A team with 5 people that know 20% calculus can produce much better results than a team where 1 person knows 100%. And sometimes they wouldnt be able to produce a result at all.
Welllll you could conclude that they are in a prime position to create a YouTube channel with 178 million views /s
https://www.youtube.com/channel/UCAL3JXZSzSm8AlZyD3nQdBA/abo...
Collaboration can only occur when each party has something meaningful to contribute.
But you still have to distinguish those who are not effective at all, contributing nothing, but who are still putting their name on the project.
To use the sibling example, there's a difference between a surgeon who draws on other specialists in the operation, vs someone that knows nothing about surgery.
You dont need an individual assessment to do that. The real work world is exemplary on that. People without degrees very often outrank and outperform people with degrees, either through curiosity or through other skills that make him a more important key member.
In real life if someone is regarded as unproductive by his co-workers is not re-tested individually for validation.
Why, for example, do curriculum developers create (or choose to adopt from textbook publishers) scenarios where if one person fails, everybody in the group suffers? That's not why we collaborate. In fact, that's the opposite of why we collaborate. We don't do it to create multiple points of failure.
It's also a problem with the way we assess and the fact that we almost exclusively conduct summative assessments on these types of projects with high-stakes consequences rather than formative assessments that allow the experience to be used to foster understanding.
I'm a parent (and an education journalist). I see a lot of this. My daughter has had to do the entire work for several "collaborative" projects to maintain her GPA just because the other students wouldn't do the work or wouldn't do it well. That's a common complaint.
Two ideas for getting around that:
1. For the types of assignments where a small group produces a single outcome and shares responsibility for it, assess formatively. If the group does poorly, the teacher sits down with them and gives them supplemental instruction. And, in talking to the students, that teacher can also discover where the weaker students are and focus on them. That way you get assessment with zero high-stakes consequences, and you help advance learning rather than ending it with a letter grade.
2. Assign projects where each student has a job and is evaluated singularly for that job but is allowed to work collaboratively with other students (and the teacher) to complete it. There are all kinds of ways to encourage collaboration in those cases without resorting to punishing others for one person's failure in the end product of a collaborative assignment.
As others have said, there's also the question of assessment itself. Why assess for a grade or points or what have you? There's a movement to do away with grades and test scores. It's working fairly well, but it requires serious dedication from the teacher to ensure that students are learning. Large-scale, that's difficult. We don't have 4 million+ teachers who would be willing to do that extra work.
In my experience at least the weaker contributors to the groups success, even those that just coasted, were still very honest when asked to assess their contribution and the contribution of others.
Now, I'm well aware that studying things you can already do is not the best way but this was what happened.
Something that worries me is: what if I work for a company that decides that everything I've written on their time belongs to them? If I had all of this in my head there would be no question about it, but writing it down introduces questions of copyright. Should this ever happen it would basically be the equivalent of losing a chunk of my brain, which is a bit of an alarming prospect.
What can you do about it (if you live outside of California)?
Your key weapon here is knowledge. Specifically, the fact that California Labor Code section 2870 exists.
"...shall not apply to an invention that the employee developed entirely on his or her own time..."
Here's what you should do to avoid draconian IP clauses:
* Print out a copy of 2870 and bring it with you when you go to sign your job offer http://webcache.googleusercontent.com/search?q=cache:3qLjxOo...
* Read your contract. If you don't see similar wording in their contract, hand them your copy of 2870 and ask it to be added to the contract.
* If they try to push back, calmly explain that every resident of California gets this "for free". If Google, Facebook, etc employees all get this, why shouldn't you?
* Be prepared to walk if they refuse.
But what if you're already in a job which has draconian IP clauses?
* Try bringing 2870 to the table the next time you are negotiating for a raise or promotion.
* If you are cheeky, go get a job offer from a competitor, and highlight the fact that they are willing to offer you 2870.
But the best thing you can do is to spread the word about 2870! If enough of us demand this, eventually it will be such a hassle (for employers outside of California) that no one will bother trying to trick their employees into draconian IP clauses.
I should give a hat-tip here to my former employer, uShip (Austin, TX). They include this clause by default for all devs, and I'll make sure I ask for 2870 at every future job.
Generally anything you write on company time or using company equipment belongs to them though.
- you used company equipment for that == it's ours
- you billed us for the time which you spent on doing that == it's ours
1. I liked the people
2. The technology was interesting
3. I felt like I needed to break into the industry as a fresh grad
4. Every other company I'd interviewed with had a similar clause
5. The side projects that I work on are strictly non-commercial, for my own education, tend to be difficult to monetize legally, and have nothing to do with anything that my employer is interested in.
6. (found out later) My employer doesn't enforce its anti-competition clauses or try to take over IP that employees develop on the side.
I haven't regretted it in 8 years, although I'd imagine that a lot of the people on HN would be a lot more entrepreneurial than me.
I can, however, give you an idea of how it works. There are many personal wiki programs out there; I settled on Zim[1] as it stores everything in plain-text files and supports a basic markup. On my phone I have the repo set up with Pocket Git[2], and I view it with Coastline[3] (which is just an arbitrary text editor; I don't mind reading the Zim syntax). The Git repository is stored on BitBucket[4] since they offer free private Git hosting, though I now have my own VPN and am considering moving the repo there. Syncing is done periodically (roughly once a month) by committing, merging, and pushing, usually with a few minor edit conflicts to the more popular pages.
Pages are organized into a very loose and fluid hierarchy; for the most part I put things someplace that seems reasonable and then periodically merge, split, and move pages when they grow too unwieldy. The major parts of the hierarchy are:
- Project:(Active/Complete/OnHold): major projects (anything from Barcamp2015Presentation[5] to NewCellphone to BetterWorld[6]) get a page, which collects a narrative about the progress of the project, a summary of the current state, and any relevant links or quotes; this page may have subpages as well.
- Entity:* collects links for anything related to someone or some company I've been involved with; mostly this is backreferences to projects I've worked on for them etc. For example, Entity:Person:JohnSmith could link to Project:Complete:JohnMidiController for a side project I did for a friend.
- Hardware:* collects everything hardware-related, for example Hardware:Computers:RaspberryPi has links to pinout diagrams and the like.
- Software:* collects software-related pages, with subsections for Software:Protocols, Software:Programs, and a smattering of loose pages.
- Snippets:* covers code snippets, such as Snippets:Bash, Snippets:Python, and so on.
This covers about 75%; the other 25% is somewhat less organized and consists of things like fiction ideas, links that don't fit anywhere else, the aforementioned LifeSkills namespace, and Miscellaneous:Quotes:FunnyPhrases ("you there, wear these groceries"[7], "Turns out I'd just existed inconveniently at you"[8]).
Hopefully this rather long post answers your questions, but let me know if there's anything more you'd like to know.
[2]: https://play.google.com/store/apps/details?id=com.aor.pocket...
[3]: https://play.google.com/store/apps/details?id=com.rumsunrise...
[5]: http://www.linestarve.com/blog/post/A-Mad-Scientists-Guide-t...
[6]: A Grand (Semi-)Unified Plan for improving everything, encompassing BetterUserInterface to BetterGovernment to BetterEconomy.
[7]: http://www.wildelifecomic.com/comic/195#comment-2550773663
It gives actual examples of commands, just like a cheatsheet does.
I realize you're being facetious, but do check with your employer that this is OK! Code on StackOverflow is under a CC-SA license, it isn't public domain or even very permissibly licensed.
http://meta.stackexchange.com/questions/12527/do-i-have-to-w...
The license [1] says that you are free to:
Share — copy and redistribute the material in any medium or format
Adapt — remix, transform, and build upon the material for any purpose, even commercially.
The licensor cannot revoke these freedoms as long as you follow the license terms.
Attribution — You must give appropriate credit...
ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.
> Starting Feb 1, 2016, all new code contributions to Stack Overflow and Stack Exchange will be covered by the MIT License.
Source: http://meta.stackexchange.com/questions/271080/the-mit-licen...
So, it depends. Code from before then is CC-SA, after it is MIT.
That follow-up post says that they're "going to delay the implementation", so I assume that today it's still all CC-SA. I haven't found any further information, but would love to know it, or be corrected on my assumption.
My company is struggling with the code license situation and I'm stuck with dealing with it for my project. Clear, up-to-date information about it would be fantastic.
for (Map.Entry<String, Object> entry : map.entrySet()) { String key = entry.getKey(); Object value = entry.getValue(); }
private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) {
if (fromIndex > toIndex)
throw new IllegalArgumentException("fromIndex(" + fromIndex +
") > toIndex(" + toIndex+")");
if (fromIndex < 0)
throw new ArrayIndexOutOfBoundsException(fromIndex);
if (toIndex > arrayLen)
throw new ArrayIndexOutOfBoundsException(toIndex);
}Below some minimum threshold of complexity, it seems like software ought to cross the idea/expression divide and become copyright-exempt, just as a mathematical formula does. In fact, the example you gave is something that could easily be recreated letter for letter without seeing the original post.
I'd be utterly shocked if that sort of "could have written it from scratch" code ever caused someone an IP problem.
Sometimes I even just walk up to colleagues and straight up ask them for help with a problem. They just tell me things I can use in my job, out loud, in a busy office, and we still haven't been caught!"
I've lost count of the number of (thankfully former) co-workers whose only technical skills were searching Stack Overflow and asking their colleagues for help with a problem. The measure of a programmer is what they are able to do when there _is_ no answer to be had from SO or their colleagues.
I really hope they don't realize that I'm using their code to cheat.
"Am I really a developer or just a good Googler?"
(pro tip; the correct answer is, "fine")
You missed the part where a search engine shows you several links, including the ones from Stack Overflow.
And all of the stack overflow answers that were linked from the top of the google search are "Have you ever heard of Google, N00B?"
I have this little book next to my desk I use to write down ideas and notes, and then I refer back to it later. Sometimes my boss is standing right there! I get such a rush.
I found this website called Stack Overflow that has so many answers to problems I run in to. Sometimes I'll just copy the code directly from the site, without typing it out again myself!
Sometimes I even just walk up to colleagues and straight up ask them for help with a problem. They just tell me things I can use in my job, out loud, in a busy office, and we still haven't been caught!
I know that my cheating gives me an unfair advantage in the job market. I know this cheating makes me an inferior programmer. And now I know I can never work at Amazon because I can't get past their super scrupulous interview process. Oh well, I guess I'll just try and get by, cheating my way though life.