Hacker Newsnew | past | comments | ask | show | jobs | submit | jchan's commentslogin

And you're not some sort of "intellectual" idolizing ghettos? I have to go in and around one very often, and hearing "learn to appreciate your local ghetto" from some Random Internet Dude is almost farcical.


I lived in a few 'ghettos' for years, growing up.

Yes, there is crime, yes, bad things can happen. But I fear the ghetto very little even now. I am a Caucasian, although that should not matter.

If I was a women, I might fear the ghetto, but I might fear parking garages and late night walks, too.

That says something about our society.

Still, I fear living in a state like Singapore more than I fear a ghetto.


Well, you probably never(?) lived in a state like Singapore. You are basing your fears only on stories like this. Imagine the opposite way around, Singaporeans probably fear more about living in a ghetto than their own state.


I agree with the vast majority of your comment, but please stop saying that North Korea is communist and that "communism can never produce a high standard of living." the former is patently false - North Korea is a Juche (which is not communist) dictatorship that uses communist theory as a carrot to keep its population hopeful. Read the Communist Manifesto if you doubt me.

The latter is unknown, as there has never been a true communist country (this isn't a "No True Scotsman fallacy" - a true state of communism is pretty clearly defined in the Manifesto).

I don't consider myself a communist (if anything more of a socialist) but reading this sort of FUD about communism is almost as painful as reading about blind hate for socialism in America.


My price for listening to communist apologists is that they explain how their version of the theory will avoid the millions of deaths that happened in Ukraine, China, and Cambodia, among others. 20th century communism was a true horror. You have your work cut out for you.

I consider it an indictment of the modern academy that the gross crimes of communism are constantly deemphasized and excused.


Those crimes weren't committed by communist states, but by totalitarian dictatorships. The true challenge for the communist is to explain how they would create a communist state without having it fall to dictatorship, as every single country it's been tried in has.


I don't know. I mean, in theory those that call themselves communists and act as flagbearers of communism would be communists. Just like those which call themselves capitalists and act like capitalists are capitalists whether or not that deviates from "pure, theoretical {communism|capitalism}". It's a distinction without a difference, in practice. It's like saying, well, priests who molested aren't really priests because priests aren't supposed to do that, according to any doctrine.


I'll gladly own up to the results of impure capitalism (e.g. the United States, Singapore, most of the West, especially the anglosphere) if web/academic communists own up to the results of impure Communism (e.g. the Soviet Union, North Korea, Cuba)


It seems to me like a lot of the "required coding class" idea is based on a misguided desire to increase the competitiveness of our country internationally. Learning to program is good, yes, but to be honest, what goal are you trying to achieve? The article suggests that the goal might be to allow people to enter the job market more quickly.

The fact is that "programming" in and of itself is just grunt work. Forcing an entire generation to learn how to put strings together to do stuff won't help any of them when they go to a job interview and see a hundred other interviewees with the exact same proficiency for copying snippets from websites.

Problem solving is the much more important thing here, and that is already focused on in high school (remember word problems?). Programming allows students to explore problem solving more interactively, yes, but requiring schools to teach programming won't help in the long run any more than emphasizing a more comprehensive and intuitive approach to solving problems - I'm sure there'll be enough of those by the time these guys graduate to last forever. :)


Having a labor pool that is universally more productive with computers would be a good thing even if we don't end up being relatively more competitive against other countries. And programming is probably a better vehicle for teaching important problem solving skills than a lot of the math and science classes that the average high school grad doesn't end up needing for their career.


"Universally more productive with computers" does not mean "know how to program a computer." Should kids be learning how to use and run a spreadsheet and type without hunting-and-pecking? Yes. Should they know how to compute big O to be productive? No.


Big-O isn't programming, but basic programming knowledge like how to use scripting for everyday tasks does lead to increased productivity with computers.


Are you suggesting that year-long programming class should be writing i/o scripts all day? Why not just teach kids Excel and be done with it?

This sort of reminds me of someone that I was working with at my last job. I told her to fill out a .csv file so that there were no blanks, but she didn't realize that navigating a spreadsheet with a mouse is a terrible idea. I told her to leave the mouse alone and use the ctr-arrow keys instead, but she didn't listen so the data got messed up.

Okay, so that is bad for her if her goal in life was to become some master data person, but you know what she was a total genius at? Photoshop. I consider this a computer skill, but it isn't programming, but most importantly, it is something she became good at because that is where her passion and goals lie.

I have a question: surely you read the articles online about programmers failing fizzbuzz and generally not being able to program at all. This is the result of students who went to school and paid for said school to learn how to program. What do you think will happen when we force every single person in the USA to program? I would say the world would suffer a serious net loss.


As for what goal you're trying to accomplish - I think it would be worthwhile just to see what sort of software people start writing when the expected level of programming knowledge starts increasing. With text editors, for instance, we already know there is a spectrum of possible solutions, some of which are easy to learn but not very productive, and some of which take a long time to learn but are very efficient (Emacs). What happens when millions more people have enough knowledge to use Emacs effectively? Or what would happen to spreadsheets if most people knew enough to make their own one-off calculating programs? I don't think they'd go away, but they might look different. I will be very interested to see where this goes.

But yes, you're certainly right that problem solving is the most important thing to teach. I think your idea of a comprehensive problem-solving approach is interesting - it sounds like you want to make that a theme across several classes. One of them could be programming, but perhaps other sorts of engineering could use it too.


I think I learn something pretty different doing programming problems than doing "word problems" in algebra. Also, don't you remember word problems that were terribly written? Programming problems (if test scripts are given) are rigorously defined by nature. I wish I had learned to program in high school.


Heh, that's not entirely untrue - the majority of people on lowendbox and lowendtalk seem to have some sort of strange fetish for running things on as little resources as possible. I've seen some people there that actually use the LEBs for things like cheaper redundant hosting, etc., but they're the exception.


Perhaps you should consider a different field of employment. https://gist.github.com/anonymous/4736156

(Pardon the tabbing, I don't have that much time to waste on uneducated comments like the above)


Unlike you, I'll avoid the ad hominem. The commenter I was replying to said that java is EASIER to visually parse. Your java code is harder to visually parse than my ruby code. It's not hard to visually parse, but it's harder than the ruby code which was my point.

btw, I've added a sort to mine, what would that look like for yours?

https://gist.github.com/jaydonnell/4735159

Edit: I see you don't have the courage to use your real account.


My name is J. Chan, and I forgot the password to my other account. Thanks for making fun of my name.


Why didn't you add the sort?


Use a Comparator. http://docs.oracle.com/javase/6/docs/api/java/util/Comparato...

Since it seems like you're talking about visual activity now instead of visual clarity, I agree that Java will be more "hard to read" under your definition. But aside from the two lines for the class declaration & method declaration and the other two for the ending brackets, there really isn't much bloat.

All that you have to implement for a simple numerical sort is some logic if a > b return 1 else if a == b return 0 else return -1.


I'm absolutely talking about visual clarity. In the ruby code it is significantly more visually clear what is going on because the java code has a lot of incidental noise. If you would show a java version that would be clear to everyone, which is probably why you didn't add the sort. The code side-by-side will speak for itself.


Wow guys really.

  Iterable<String> s = Splitter.on(" ").split("Hello World");
  Multiset<String> counts = HashMultiSet.create(s);
  Multiset<String> sorted = Multisets.copyHightestCountFirst(counts);
Or to sort by counts directly

  TreeHashSet.create(Splitter.on(" ").split("Hello World"))

Granted this uses guava, but there is nothing really more readable about your ruby code than this guy's java code. To say he 'lacks courage' ... jesus I'm still laughing. "Why didn't you add the sort!" You're too much man.


Your code doesn't do the same thing as mine. You need to start with an array of sentences.

Show the java code that does the same thing and it will be clear that the ruby is more readable.


It will not be clear: You can replace the first line with the following two

  String[] sents = {"the quick", "the slow", "the blue"};
  Iterable<String> s = Splitter.on(" ").split(Joiner.on(" ").join(sents));


Guava is nice, it makes java almost bearable.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: