Online Python Tutor - Learn programming by visualizing code execution 10 Technical Papers Every Programmer Should Read (At Least Twice) 10 Technical Papers Every Programmer Should Read (At Least Twice) this is the second entry in a series on programmer enrichment Inspired by a fabulous post by Michael Feathers along a similar vein, I’ve composed this post as a sequel to the original. That is, while I agree almost wholly with Mr. Feather’s1 choices, I tend to think that his choices are design-oriented2 and/or philosophical. In no way, do I disparage that approach, instead I think that there is room for another list that is more technical in nature, but the question remains, where to go next? All papers are freely available online (i.e. not pay-walled)They are technical (at times highly so)They cover a wide-range of topicsThe form the basis of knowledge that every great programmer should know, and may already Because of these constraints I will have missed some great papers, but for the most part I think this list is solid. A Visionary Flood of Alcohol Fundamental Concepts in Programming Languages (link to paper) by C.
AppInventor.org: Democratizing App Building 50 Top Sources Of Free eLearning Courses Whether you are looking for a master’s degree program, computer science classes, a K-12 curriculum, or GED study program, this list gives you a look at 50 websites that promise education for free. From databases that organize over 1,000,000 students throughout 16 universities, to a small library of documents for those interested in history, the opportunities for free online learning continue to expand as the Internet becomes a crucial component in education. 1. UMass Boston Open Courseware The UMass courseware offers a broad range of classes in areas like psychology, biology, early education, political science, history, mathematics, and others. Each department has a separate page listing the classes available. There are no slides, videos, or lecture notes, which makes this open courseware inferior to other universities that offer extensive resources. 2. This website has a variety of video lessons for free. 3. 4. 5. 6. 7. 8. Stanford on iTunes U gives you two options. 9. 10. 11. 12. 13.
SmartHome - Documentation Background Since the emergence of broadband internet connections, smartphones and tablets the smart home market shows a remarkable upsurge. This has led to a very fragmented market, which makes it difficult for customers to "bet on the right horse". Scope The goals of the Eclipse SmartHome project can be summarized as: Provide a flexible framework for smart home and ambient assisted living (AAL) solutions. Description The Eclipse SmartHome project is a framework that allows building smart home solutions that have a strong focus on heterogeneous environments, i.e. solutions that deal with the integration of different protocols or standards. The stack is meant to be usable on any kind of system that can run an OSGi stack - be it a multi-core server, a residential gateway or a Raspberry Pi. Currently planned initial features and extension points of this framework include: Eclipse editors for editing configuration models and rules. Why Eclipse?
Non-Programmer's Tutorial for Python 2.6/Decisions If statement As always I believe I should start each chapter with a warm-up typing exercise, so here is a short program to compute the absolute value of a number: n = input("Number? ")if n < 0: print "The absolute value of", n, "is", -n else: print "The absolute value of", n, "is", n Here is the output from the two times that I ran this program: Number? Number? So what does the computer do when it sees this piece of code? More formally Python looks at whether the expression n < 0 is true or false. There are a number of different tests that an expression can have. Another feature of the if command is the elif statement. a = 0while a < 10: a = a + 1 if a > 5: print a, ">", 5 elif a <= 7: print a, "<=", 7 else: print "Neither test was true" and the output: Notice how the elif a <= 7 is only tested when the if statement fails to be true. Examples # This Program Demonstrates the use of the == operator# using numbersprint 5 == 6# Using variables x = 5 y = 8print x == y And the output
RunestoneInteractive/RunestoneTools Chapter 2 : Functional Programming — cs5book 1 documentation 2.1 Humans, Chimpanzees, and Spell Checkers For many years, scientists were uncertain whether humans were more closely related to chimpanzees or gorillas. New technologies and clever computational methods have allowed us to resolve this issue in recent years: humans are evidently more closely related to chimps than to gorillas. As you may recall from your biology class, DNA is a sequence of molecules fondly known as “A”, “T”, “C”, and “G”. Imagine that we look at a DNA string from the human genome and a string from the corresponding location of the chimp genome. But how exactly do we measure the similarity between two strings? It seems that biology beat computer science to programming! Interestingly, this problem also arises in spell checking. For example, consider the pair of strings “spam” and “poems”. Our ultimate goal in this chapter is to write a program to compute the edit distance. 2.2 Getting Started in Python That’s your invitation to type things in. 2.2.1 Naming Things 2.4 Lists
An Overview of Runestone Interactive — Runestone Interactive Overview Runestone Interactive is a project focusing on providing tools and content for the purpose of creating interactive computer science courseware. We provide a complete introductory series of chapters that can be used as is, or if you wish, you can customize the chapters. You can even start from scratch and write your own interactive textbook using the tools that we provide. In order to see how the tools work, the following sections will show them in action. Embedded Videos Our toolset provides a number of different things that will help you to learn to program in the Python programming language. ActiveCode Windows One of the most important things that you can do when you are learning a programming language is to write programs. Take a look at the activecode interpreter in action. print("My first program adds a list of numbers") myList = [2, 4, 6, 8, 10] total = 0 for num in myList: total = total + num print(total) (codeexample1) Now try modifying the activecode program shown above. (units1)
1. The way of the program — How to Think Like a Computer Scientist: Learning with Python 2nd Edition documentation The goal of this book is to teach you to think like a computer scientist. This way of thinking combines some of the best features of mathematics, engineering, and natural science. Like mathematicians, computer scientists use formal languages to denote ideas (specifically computations). Like engineers, they design things, assembling components into systems and evaluating tradeoffs among alternatives. Like scientists, they observe the behavior of complex systems, form hypotheses, and test predictions. The single most important skill for a computer scientist is problem solving. On one level, you will be learning to program, a useful skill by itself. 1.1. The programming language you will be learning is Python. As you might infer from the name high-level language, there are also low-level languages, sometimes referred to as machine languages or assembly languages. But the advantages are enormous. Due to these advantages, almost all programs are written in high-level languages. 1.2. input bug
Smartenit - Solutions There is nothing as tasty as homemade raspberry pie in the summer, and the ice cream on top makes it even more delicious, especially when it's free. The Smartenit ZBPServer software is the ice cream that turns your Rpi into a "HomAidPi", full-fledged automation monster gateway that manages large home / building automation networks based on ZigBee, INSTEON and X10 protocols. Choose one of several USB automation interfaces available from Smartenit (USB-CID, ZBPLM, and EZIComm) and access a large ecosystem of automation devices that includes lighting, HVAC, irrigation, appliance control, energy management, water management, etc. Check out our "How To" section below to see how to load the Smartenit software onto your Rpi and cook up something special. So grab your Raspberry Pi, compatible Smartenit controller automation interface, scoop on our ZBPServer and enjoy your powerful, inexpensive home automation gateway. We think you'll agree nothing tastes better than some HomAidPi!
Introducing Photo widget, floating thumbnails for your website Introducing Photo widget, floating thumbnails for your website Lots of people have contacted me, asking for a version of my Flickr widget that they could use on their website, without having to use Flickr (or Picasa). Doing such a version was easy enough, but I was hesitant to release it. One thing I could have done was to simply release the sources for the Flickr widget. Version comparison Please make sure you extract all the files from the zip to one location. Support Photo widget is the DIY version of Flickr widget. I’ve tried very hard to make the examples as easy as I possibly could. Donations I looked into making this a commercial product for a long time. If your project falls in the latter category, please consider donating.
Forms Kube Forms only utilize native tags while remaining most flexible in building most complicated forms. <form method="post" action="" class="forms"><label> Email <input type="email" name="user-email" class="width-50" /></label><label> Password <input type="password" name="user-password" class="width-50" /></label><p><button class="btn-green">Log in</button><button class="btn">Cancel</button></p></form> Need more simplicity? Ok, no problem. <form method="post" action="" class="forms"><label><input type="email" name="user-email" placeholder="Email" class="width-50" /></label><label><input type="password" name="user-password" placeholder="Password" class="width-50" /></label><p><button class="btn-green width-50">Log in</button></p></form> Input states Required <form method="post" action="" class="forms"><label> Email <span class="req">*</span><input type="email" name="user-email" class="width-50" /></label></form> Input descriptions Form sections Checkboxes Set .forms-list class for the list. Options