teaching

Teaching JavaScript to Java programmers

In a few weeks, I'm going to have the opportunity to introduce my coworkers to JavaScript. Previous projects here have used primarily Java and C++. What are the most important or foreign aspects of JavaScript that I need to explain? I have a short list of big things I've already identified: Hashes/dictionaries as objects Prototypal inh...

What are the most overused design examples? Provide better examples if you have them.

When given an example of refactoring, I'm tired of seeing a Data Access Layer with string literals for connection strings being replaced by IConnectionStringProvider. eg: public DataSet GetCustomers() { string connectionString = "SQLClient;Blah;Blah"; using(SqlConnection conn = new SqlConnection(connectionString)) ... to...

How can I persuade my designer to give good bug reports?

So we have a small team for a certain project. Developer (Python), designer (html/css/jinja2), content manager. Now, often the designer (html/css/jinja2) (who is quite technically adept in a Windows way) will pick up bugs and report them: "Ali, I have a problem with text." Should say "Ali, I am having an exception rendering unicod...

Ruby and Ruby on Rails crash course syllabus

I intend to design an induction plan or you can say a crash course syllabus for developers starting to learn Ruby and Ruby on rails. I am not sure about number of topics to be covered (And the depth of coverage) as this is a 3 day course (24 to 27 hours). Also, newbies tend to compare ruby with existing object oriented programming vetera...

Programming Vocabulary

I am getting ready to teach someone without any background in programming a language (PHP) I want to make sure I don't forget any important vocabulary this is what I have so far: Function/Method Variable Class String Integer Boolean Float Static Typing (Not needed for PHP but should be understood.) Dynamic Typing Are there any other...

What would you suggest as a high school first language?

Edit by OA: After reading some answers I'll just update the question a little. At first I put it a little bluntly, but some of those gave me some good arguments which have to be taken into consideration while making a stand on this one. (these are mostly picked up from comments and answers below). A few things to take into account: to...

How do I explain loose coupling and information hiding to a new programmer?

How do I explain loose coupling and information hiding to a new programmer? I have a programmer who I write designs for, but who can't seem to grasp the concepts of loose coupling and information hiding. I write designs with everything nicely broken down into classes by function (data access is separate, a class for requests, a contr...

How do you TEACH best practices?

I work with a bunch of people that write sloppy code. I mean things like defining variables in multiple places, tightly coupling code, etc. I am not an expert but I have a willingness to improve. It seems the people I work with are completely fine with what they are doing. How can I motivate them to improve? I can't offer any incentives ...

Defining OOP for a new programmer.

In teaching a first language to someone with no programming background I am having a hard time defining OOP despite the fact that I prefer OOP, how can I define OOP to someone with little (or zero) programming experience? ...

Peer Learning Topic Suggestions

Every Friday we have a half-hour peer learning session, where on a rotating basis, we all get a turn to give a short, introductory presentation on technology we feel we know and could benefit our colleagues knowing. I know everything ;-), so I'd like some ideas on what I could present. What I mean to say, is that I don't really have an...

Global Code Review

I have some developers who are rather green when it comes to object oriented development, and I was looking for a way to explain to him the concept of casting and a few other things. I was doing a code review on some of his code and I find things like protected Guid LastValue { get { if (ViewState["LastValue"] == n...

What PHP/MySQL book would be good as a textbook?

I'm possibly teaching an undergraduate PHP/MySQL course in the Fall and was wondering if anyone has any recommendations for good textbooks. The books have to be geared towards a beginner/medium level (I'm assuming/hoping my students will have C++ and MsSQL classes prior to mine). Topics I want to cover in PHP: Variables/Constants Con...

Continuous Integration - How To Get Developers Bought-In To The Idea

I'm a freelance developer and have recently set up source control and automated builds (CI and nightly) for a software development team at a client which did not previously use these techniques. Whilst they are now using the source control (albeit somewhat begrudgingly), I just don't seem able to get them bought into the concept of cont...

What can I do to be a great Computer Science teacher/professor someday?

Someday, I think I'd like to be a teacher or professor of Computer Science. I'm not sure what level, I'm guessing that will more depend on how far I go before actually switching to teaching. Currently, I only have a few years experience programming professionally, mainly with C#, PHP, HTML, CSS, and JavaScript. I have touched C++ and ...

What should be taught in a "Fundamentals of programming" course at university?

I have started a new question (see here), because I think the topic is of importance in a more general form. The question is now: If you were a professor at a Computer Science Dept. in some university, what would make it into your course? This is a programming course, second term, first year computer science/computer engineering. Remem...

Teaching principles of web design

So, another teaching question. I'm teaching this course in web development and the school i'm with has a recommended text that we should use but i feel that most of the stuff is pretty surface level for the "principles of web design" area, eg, these are the topics: Browsers Platforms Standards Monitor Resolution Connection speed and m...

When teaching C, is it better to teach arrays before or after pointers?

For those of you with curriculum development experience: what is the best strategy regarding arrays? I have seen some schools that teach arrays after variables and control structures, often before even teaching functions. This allows teaching of some rudimentary algorithms, etc. However, it then brings the problem of how to pass arrays ...

Non-programming application for 2d game creation

I'm looking an application for children to learn about how to create games. I don't want something as complex as Game Maker. I need it to show children an entry point to create games. ...

Good textbooks on "Computing Architecture"?

I am going to teach my first undergraduate class on "Computing Architecture." I guess that this is not quite a proper term because other related terms, like Computer Architecture, usually refer to low-level structure of computer system. Architecture in "computing architecture" is used as in software or system architecture. Actually this...

How can I teach a beginner to write ASP.NET web applications quickly?

Related: Best ways to teach a beginner to program? I am teaching my brothers ASP.NET programming and they are starting with a very small amount of background knowledge. They know things like declaring a variable, what a class is and what a page is. I want to teach them to be good web developers in the shortest amount of time. The ...