Skip to main content

Should You have CSE degree to become a Programmer

While the debate over the value of a computer science degree rages on, these programming leaders emphasize the importance of a well-rounded education, with plenty of time spent studying subjects beyond the console.

"The biggest challenges in life do not have technical fixes," Eich says, "so it's important to study history, literature, art, and other kinds of human knowledge than anything to do with computers."

Hickey agrees, placing programming into a broader perspective. "Programming is a very new endeavor in the historical scheme of things," he says. "One shouldn't presume that we understand how best to pursue it." Instead, Hickey suggests pursuing other educational interests to help understand the kinds of problems programming can solve.

"The best programmers are those that can understand, communicate about, and solve problems in the domains they are in," he says. "Software is just a tool for that."

Johnson agrees that would-be programmers should investigate subjects outside the CS lab and mathematics department to help round out their education because, ultimately, "programming is about people rather than math." Even when it comes to pursuing CS as a degree, Johnson is "torn."

"Mostly one uses things learned on the job," Johnson says. "There's a real value in a good CS education, but I've seen a lot of great programmers who had different backgrounds." Van Rossum agrees. "You have people who come with an English degree and they go to a Django Girls workshop, and from then on they are Web developers," he says. "You also have people who go through the traditional four years of college with a major in computer science."

Of course, theory does have its place, Johnson says, even in the real world. "Yesterday I used some compiler theory that I learned as a CS student, and it helped me get a neat, robust solution to the problem I had," he says. "But that doesn't happen very often."

Eich sees more value in studying mathematics as mathematics, rather than as a pretext for studying computer science theory. "Programming is not all about mathematics, sometimes hardly at all," he says. "But if you're good at math, study it as math while you are young. Don't worry about programming so much."

Van Rossum goes a bit deeper, recommending "the kind of math that develops logical thinking."
Schlueter has a different theory for going general before becoming a programmer: "A liberal arts education is a great way to spend four years after high school, if you can afford it," he says. "There won't be another time in your life when you can mostly just goof off and party for that long with societal approval."

If you do take him up on his suggestion, Schlueter also offers advice that's deadly practical: "State schools are way cheaper, and student loans are no joke, so be thrifty," he says. "Try to get any scholarship or grants that you can." Writing, Schlueter argues, is a key facet of being a strong programmer.

"Whether you go to college or not, try to make time as early as possible to read lots of literature and philosophy, both primary and secondary sources, and write as much as you can," he says. "If you're not going to college, then as soon as you can, shell out for a writing tutor who'll give you assignments and then help you polish them. This job happens on the Internet, and the written word is how people communicate there. The more effectively you can write, the better off you'll be."

Related: Computer World Full Article

As for where that exciting work may be for young programmers planning future careers, Eich suggests "space, 3D printing, 3D rendering, bioinformatics, web." 3D printing -- also known as additive manufacturing -- turns digital 3D models into solid objects by building them up in layers. The technology was first invented in the 1980s, and since that time has been used for rapid prototyping (RP). However, in the last few years, 3D printing has additionally started to evolve into a next-generation manufacturing technology that has the potential to allow the local, on-demand production of final products or parts thereof.

  • Already it is possible to 3D print in a wide range of materials that include thermoplastics, thermoplastic composites, pure metals, metal alloys, ceramics and various forms of food. Right now, 3D printing as an end-use manufacturing technology is still in its infancy. But in the coming decades, and in combination with synthetic biology and nanotechnology, it has the potential to radically transform many design, production and logistics processes.

  • This web page provides an overview of 3D printing technologies, as well as their present and likely future application. For a full list of 3D printer manufacturers, bureau services and other market players, please see my 3D Printing Directory. And for 300 pages on the subject, you may be interested in my book 3D Printing: Second Edition


Popular posts from this blog

Four Tableau products a quick review and explanation

I want to share you what are the Products most popular.

Total four products. Read the details below.

Tableau desktop-(Business analytics anyone can use) - Tableau  Desktop  is  based  on  breakthrough technology  from  Stanford  University  that  lets  you drag & drop to analyze data. You can connect to  data in a few clicks, then visualize and create interactive dashboards with a few more.

We’ve done years of research to build a system that supports people’s natural  ability  to  think visually. Shift fluidly between views, following your natural train of thought. You’re not stuck in wizards or bogged down writing scripts. You just create beautiful, rich data visualizations.  It's so easy to use that any Excel user can learn it. Get more results for less effort. And it’s 10 –100x faster than existing solutions.

Tableau server
Tableau  Server  is  a  business  intelligence  application  that  provides  browser-based  analytics anyone can use. It’s a rapid-fire alternative to th…

Different Types Of Payment Cards you need to know

The Credit Card (Shopping): The purpose o this card is to buy any item withing the limit prescribed by banks to cardholder. These cards can have both Magnetic stripe and Chip cards. 
Now a days all banks are issuing credit cards with CHIP and PIN. After entering the PIN by cardholder, then transaction starts for further processing.

The debit (ATM, Cash) card is a relatively new method of payment. It is different from a credit card because the debit cardholder pays with the money available in their bank account, which is debited immediately in real time. A debit card seems to be more dangerous compared to a credit card because the debit card is directly linked to the bank checking account and usually allows ATM cash withdrawals.

On the other hand, it is more protected by the required two-factor authentication (PIN number plus card itself). The real dangerous element of many branded debit cards is that they can be processed as credit cards, without entering the PIN.

The Gift card
is simi…

The Sqoop in Hadoop story to process structural data

Why Sqoop you need while working on Hadoop-The Sqoop and its primary reason is to import data from structural data sources such as Oracle/DB2 into HDFS(also called Hadoop file system).
To our readers, I have collected a good video from Edureka which helps you to understand the functionality of Sqoop.

The comparison between Sqoop and Flume

The Sqoop the word came from SQL+Hadoop Sqoop word came from SQL+HADOOP=SQOOP. And Sqoop is a data transfer tool. The main use of Sqoop is to import and export the large amount of data from RDBMS to HDFS and vice versa. List of basic Sqoop commands Codegen- It helps to generate code to interact with database records.Create-hive-table- It helps to Import a table definition into a hiveEval- It helps to evaluateSQL statement and display the resultsExport-It helps to export an HDFS directory into a database tableHelp- It helps to list the available commandsImport- It helps to import a table from a database to HDFSImport-all-tables- It helps to import tables …