Every time you feel like you've made the world better by upvoting a story about injustice, you're just making yourself feel smug. Forget the upvotes... go work on making the world a better place.
He was writing about how stories of social injustice get a ton of upvotes, but nobody actually goes out and does anything to fix the situation. I'm sure there's a lesson here for HN.
I don't have the time, energy, or resources to address every single social injustice or well intended cause. I might donate cash and possibly even time toward a cause after I have taken care of my job and mortgage and family and other immediate self-survival needs, but there are just too many causes that are worthy.
I can, however, give the slightest nod of support to promote countless causes that I may appreciate, but not be able to do anything about. Or I could smugly tell people how smug they are (believe me, I do that, too!).
Edit: Not that I don't agree there are far too many cause-whores out there who have stickers and shirts and web-buttons for a bunch of trendy causes that don't contribute toward anything in the world and that there aren't a ton of people who feel they directly had a part in the recent middle east uprisings, just because they followed activists in the thick of it, via Twitter.
I really want to learn C, like he says. I get plenty done without knowing it, and I have few doubts I can continue to find decent work without knowing it, but I haven't been able to gain any traction when I try to learn it.
I've got the books sitting front of me, and I've written some trivial visualizations of sorting algorithms using terminal output, but damn if I can find a way to use C as a web developer. If there were just some use case where C would help me get something done, I'd be all over it.
For years as I developed with Python and Javascript I thought "I really should write something in C again and maybe I should learn some C++". But nothing I was doing was performance critical or low level enough that I needed C or C++.
Then, a funny thing happened and I started playing with the Arduino.
And, while they go to great pains to hide it from non-technical people, the whole Arduino stack (ignoring the IDE) is based on C/C++. So then I began writing C again and learning C++. (I always find it slightly odd that I'm using C++ on a microcontroller--admittedly it's very small subset of C++, mostly just used for the object encapsulation/abstraction. (Insert handwavy, "yes, yes, I know it's not strictly C above library level" here.))
So, you might like to take a look at playing with the Arduino if you want to get into C. And if nothing else it's fun playing with tangible things that interact with the "real world".
A great exercise for Web developers is to build a minimal web-server. You can choose your definition of 'minimal' but essentially it should receive some request and return a response (from and to a web browser). As a webdev I found even the very, very minimal web server in Land of Lisp to be really insightful to build. If you wanted to flesh out the actual handling of http verbs better that would be even more awesome. Minimal webservers should be the minimal lisps of web developers
> I've got the books sitting front of me, and I've written some trivial visualizations of sorting algorithms using terminal output, but damn if I can find a way to use C as a web developer
Write a C-extension for infrastructure-level ruby gem if you're a rubyist, or fix a bug / add a feature in your favorite scripting language.
So, if you're a web developer, you probably use Perl, Python, Ruby, or some similar language. Guess what, these are written in C(+). When you need to add or fix a feature, guess what language you use?
(+) Yes, yes, programming languages are not written in anything. Their implementations are. I know you know what I mean.
Try writing a custom apache module? (Or nginx, or similar...) You can do some pretty fun things once you get into that layer of the web transaction life cycle (e.g. modifying behavior of things outside of the usual request/response part of the http transaction that you'd usually work with).
I'm learning it now too. My primary use case, at least initially, is going to try to extend python with C. Not really because I have a need, but mostly because I can't really imagine needing C for any other task than speeding up some of my poorly optimized python at some point down the road.
I'm not really convinced that StackExchange is the best system for that. You'd really want one StackExchange per person; otherwise, the one-answer-per-question nature of StackExchange, with voting for "correct" results, which result in bizarre gaming behavior and impossible-to-follow discussions.
Do Javascript programmers program in terms of function applications, or do they program in terms of sequences of state-changing operations?
If they do the first, then Javascript is a functional language. But without even a function composition or application operator (or function), it's obvious tht Javascript is not intended to be functional. It's an imperative/OO language with lambdas, like Common Lisp.
There is no canonical definition of "functional language", so I guess it depends on your definition. JavaScript is an OO-language, but it is possible to program in a functional style, just as with many other OO languages.
But typical JavaScript development will not teach you the functional programming paradigm, if that is what you ask.
If you really want to learn functional programming, you are better off trying something that at least makes you go out of your way to code in a non-functional style. Anywhere from all the way off the deep end with Haskell to Clojure and F# being good choices from personal experience.
chrisaycock|15 years ago
He was writing about how stories of social injustice get a ton of upvotes, but nobody actually goes out and does anything to fix the situation. I'm sure there's a lesson here for HN.
pstack|15 years ago
I can, however, give the slightest nod of support to promote countless causes that I may appreciate, but not be able to do anything about. Or I could smugly tell people how smug they are (believe me, I do that, too!).
Edit: Not that I don't agree there are far too many cause-whores out there who have stickers and shirts and web-buttons for a bunch of trendy causes that don't contribute toward anything in the world and that there aren't a ton of people who feel they directly had a part in the recent middle east uprisings, just because they followed activists in the thick of it, via Twitter.
hunterjrj|15 years ago
"I defend the value of "not caring about 90% of stuff" Care deeply about everything == accomplish nothing." - John Carmack
makmanalp|15 years ago
pclark|15 years ago
warrenwilkinson|15 years ago
euroclydon|15 years ago
I've got the books sitting front of me, and I've written some trivial visualizations of sorting algorithms using terminal output, but damn if I can find a way to use C as a web developer. If there were just some use case where C would help me get something done, I'd be all over it.
follower|15 years ago
Then, a funny thing happened and I started playing with the Arduino.
And, while they go to great pains to hide it from non-technical people, the whole Arduino stack (ignoring the IDE) is based on C/C++. So then I began writing C again and learning C++. (I always find it slightly odd that I'm using C++ on a microcontroller--admittedly it's very small subset of C++, mostly just used for the object encapsulation/abstraction. (Insert handwavy, "yes, yes, I know it's not strictly C above library level" here.))
So, you might like to take a look at playing with the Arduino if you want to get into C. And if nothing else it's fun playing with tangible things that interact with the "real world".
Homunculiheaded|15 years ago
SkyMarshal|15 years ago
http://news.ycombinator.com/item?id=2407334
http://news.ycombinator.com/item?id=2436885
http://thechangelog.com/post/4608227295/raphters-a-web-frame...
orijing|15 years ago
xentronium|15 years ago
Write a C-extension for infrastructure-level ruby gem if you're a rubyist, or fix a bug / add a feature in your favorite scripting language.
jrockway|15 years ago
(+) Yes, yes, programming languages are not written in anything. Their implementations are. I know you know what I mean.
lactoferment|15 years ago
This was the final project in the C class I took in college. It's not a bad idea.
volkadav|15 years ago
2mur|15 years ago
elai|15 years ago
rubentopo|15 years ago
leon_|15 years ago
Write a web app in C? ;)
But yeah, in most cases C won't improve your productivity as a web developer. But it will certainly make you understand the computer better.
So maybe start a recreational project in C? A command line utility, a demon, a music streaming server - something not really web-dev related.
ceejayoz|15 years ago
gecko|15 years ago
scorpion032|15 years ago
Apocryphon|15 years ago
jrockway|15 years ago
If they do the first, then Javascript is a functional language. But without even a function composition or application operator (or function), it's obvious tht Javascript is not intended to be functional. It's an imperative/OO language with lambdas, like Common Lisp.
olavk|15 years ago
But typical JavaScript development will not teach you the functional programming paradigm, if that is what you ask.
runevault|15 years ago
harryh|15 years ago