The folks at peepcode are fantastic. Very pragmatic and polite.
And you have nothing to lose. :-)
246 karma · joined October 4, 2010
The folks at peepcode are fantastic. Very pragmatic and polite.
And you have nothing to lose. :-)
I used to, and still, treasure the books on science that Mr.Asimov wrote. It was fantastic. I just wish that he had lived to see this phenomenon taking place. I think he would be very, very pleased with Salman
The key differentiator is that these are aimed at under-grad and grad students and are simple conversion of what happens in a course, where the internet is only incidental.
Khan Academy videos are aimed primarily at school students and are much shorter, more focused and completely based on the internet. The tests are geared for online testing, the metrics collected are then displayed online etc.
Really sounds suspicious.
How can you compare a nation and it's minions who are conducting a terrible subjugation of an entire group of people who made the mistake of being born there.
Silly.
A Googly is a type of delivery bowled by a bowler where the ball, after pitching on the ground, turns in the opposite direction of the majority of the balls bowled by the bowler. Thus a bowler who predominantly bowls off-spin ( ie, a ball which, after pitching on the ground, turns from left to right ) bowls one which goes from right to left.
I also believe that their training/exposure to CS in college is not uniformly good, and that they are put into an environment where they are already expected to know stuff which they have not been exposed to. Good organizations spend quite some time on training, but many do not.
I personally believe that before a programmer is given autonomy, it is vitally important to have people with good, attitudes who are willing to admit to mistakes and learn constantly, who have some measure of comfort with the fundamentals of programming ( which works across languages ), and who are mentored properly ( by which they have people to turn to whenever they get struck and need to figure out how to proceed further ). Most middle managers have no clue as to what programming is and hide behind a layer of techno-talk and they really are often unable to provide a sense of direction or purpose to the programmer.
While i agree with your role for management in creating a good environment for your emplyees, giving them a lot of autonomy, allowing them to master their tools, and having a sense of shared purpose, i believe that these require a few fundamentals to be met before the above environment is productive.
I admit that these observations are biased and not based on any scientific studies, so take them with a pinch of salt.
I would suspect that children need a balanced mix of both: discipline to learn the basics in whichever field they want to get into, coupled with freedom to explore their own interests. I suspect that today's american school culture stresses creativity to the point of ignoring the fundamentals. The good thing is that there are self-correcting mechanisms built into the american system as opposed to the chinese system where the children and the parents too, rarely get much of a say.
If you spend time in terms of vetting the team for people you are comfortable with, take the time to be as clear and detailed as possible with the requirements, have a good continuous build system so that you can see the software being developed daily, and have direct, continuous communication channels to the coders, one would have a far better experience.
Any fairly serious startup needs a good business culture for it to grow and mature, and not just a reliance on technology alone. There have been a lot of tech organizations which crash and burn not because they don't have a good tech team, but because of their lack of business acumen. A look at the US DotCom Bubble should help in this regard.
1. When the author starts off with "Indian Startups need to get off their asses and learn to program" he indirectly implies that they don't - without providing any real evidence to back up his assertion.
2. The author of the post just bases his generalizations on getting a lot of emails from potential entrepreneurs. Hell, he should just check out craigslist to find a lot of folks with get-rich quick schemes with little to no technical background. The phenomenon of get-rich-quick entrepreneurs in not unique to any one culture.
If the author and his team does not want to be shocked by such emails, they should investigate something called a spam filter. It might reduce their shock reactions.
3. He draws conclusions like "these folks have no tech capability whatsoever and feel that technology is trivial and can be outsourced."
Maybe they do, maybe they don't. One cannot generalize an entire country's tech culture based on a few half-assed emails. I don't consider every nigerian i meet as a scammer.
4. If he has just resorted to gross exaggerations, that would be OK. It's his opinion, and he has every right to it. When he starts by condescendingly suggesting that potential entrepreneurs learn programming and being lazy and wondering why such folks get VC-funding, he seems to come across arrogantly.
5. Outsourcing is a part of the global IT landscape, and India, more than any other nation, has benefited enormously from it. Every major IT vendor, from Microsoft to Oracle to Sun to Google has opened indian operations and has hired programmers by the thousands. Does the author imply that these organizations lack a tech culture, since they take advantage of indian outsourcing in a big way? His suggestions seem to suggest that the article's focus is on internet startups, but he does not mention that. He also seems to lump product development with internet-based services.
The irony is that the few valid points he makes regarding usability, Simplicity and performance is completely masked by his condescending tone.
1) Your teacher cannot learn a new language well enough to teach a bunch of high school students in time. Have some consideration for him.
2) Your goal when starting to learn programming is not to learn the syntax of any one language, it's to learn to solve problems using programming. - Learn about P-code ( or psuedo code ) - Learn about Simple Data Structures. - Learn about conditional( if-then-else ) constructs - Learn about iterative( for-while ) constructs, - Learn how to declare variables and initialize them; - Learn how to edit-debug-run code - Learn how to version-control code (any file in general) - Learn how to write functions/methods/sub-routines. - Learn how to comment your code for future debugging
These are fundamentally the same in almost all modern programming languages. The syntax changes from one to another is mostly cosmetic. The key is good coding and problem solving habits and attitudes.
3) It's easy to spend time on the internet and be anamored about a particular language, particular OS, particular editor etc - but in the long run, they are commodities; there's no great big differences between them
4) If you really want to work in python, do so. Finish your problems in VB.NET and re-write it in python. Just don't impose your preferences on your teacher and entire class. It would detract from the goal of the class.
That would be like comparing communist china of Chairman Mao's era to the china of today.
The whole process of dis-mantling the license raj was started by the current Prime Minister in 1991 when he was appointed the finance minister of india. He has continued to push his economic agenda on modern india and the results are plain to see. A GDP growth rate among the highest in the world for the last 15-20 years. Among the world's leaders, i doubt if anyone has half his knowledge of world or indian economy or his educational qualifications.
There is a realization within the entire beurucratic and political framework about the importance of openness and integration with the global economy. Which is one of the reasons why so many IT and BPO organizations have sprung up all over india.
That which you see is false; That which you hear is false, only that which is well researched is true.
As a person who started a software product organization in 1995, i can tell you that pre-conceived notions are just that. Preconceived.
1) Hire folks who exhibit good problem-solving skills and possess a good attitude. These folks usually are easily trained and become productive in a short span of time. But you have to invest in your employees - through training, through remuneration, through building an open culture.
Good leaders work with the tools they have and the people they have - not set improbable standards. You would be surprised by what people are capable of if you support them, encourage them, train them and give them room to learn by making mistakes.
2) Nowadays i usually try to find good open source developers in my area, study their code, check out their blog listings, check out their mailing list responses - and then do my best to convince them to work with me. These folks are among the BEST.
3) In the past, i have conducted coding competitions in universities and collages - and have hired many of the student participants after interacting with them informally, talking to their friends and checking out their code.
4) I would also humbly suggest that Web development has such an enormous set of great tools, books, articles, tutorials etc, that any curious and persistent person can pick up the basics in a short span of time - given the right motivation.