Skip to main content

Posts

Showing posts from November, 2014

25 Days of Study-Assessment

A quick assessment of what I've learned in the last 25 days :   -Basic HTML, CSS & Javascript (I can build a simple webpage and make it do things).   -Basic Computer Science (I have a grasp of the fundamentals of computing).   - Version Control (I can create repositories, push files to github, merge, pull, etc.)   -Basic Java (I can create basic classes to solve problems).   -Basic R (I can import data and perform various analyses on it). The list doesn't look that impressive and includes a fair number of 'basics'. However, I have learned a lot and more importantly, I am making progress. Most importantly I feel confident about my abilities-I am confident that I will make a good programmer. So far, I haven't been keeping strict records of my time. I've estimated that I spend at least  7 hours  a day of solid learning and doing (which makes it about 175 hours so far). One hesitation I have about the Web Development curriculum I'm fo...

Final-Reference Variables-Constants in Java. What does it all mean?

So far, my programming journey has been easy riding. Everything in computer science I've come across so far seems so logical and (really) obvious after a moment's thought. (n.b. The following will contain mistakes, don't copy and paste this for your Comp.Sci.101 Assignment. If any readers can help clarify my thinking, it would be much appreciated.) Well, except for constants in Java. In Java, you can define a variable and give it a value:   ( e.g. Year current =1932;  creates an variable of type Year and initializes it with the value 1932). Speaking correctly, the variable   current  is NOT equal to 1932. Rather, current is a reference to a location in the computer's memory where the data 1932  is stored. A variable name like current  can be thought of as a listing in a telephone directory: "To find the current year, go to this address in the memory." Variable are so called because their values can change during the running of a program. For ...

Elegance

Here's an example what 'elegance' means in programming. These are three solutions to a Project Euler problem .  All three programs do the same thing-find prime factors of a given number. (I've removed comments). The relative sizes of the scripts are 1.285kb, 0.694kb and 0.139kb respectively. 1) var biggestPrimeFactor = 1; var numberToFactor = 600851475143; var factorArray = [] for (i = 2; i <= Math.sqrt(numberToFactor); i++) {     if(numberToFactor % i === 0) {         factorArray.push(i);         var isPrime = true;         for(j = 2; j <= Math.sqrt(i); j++) {             if(i % j === 0) {                 var isPrime = false;             }         }         if(isPrime === true) {             biggestPrimeFacto...

Week 4 start

It has been three weeks-what have I learned?         Sugata Mitra's credo  is true- at least when it comes to computer programming. Anyone can learn programming online: there is a plethora of resources. Additionally, programming offers instant feedback-it's unlikely you will 'break' your computer and your program either works or it doesn't.        Since last week I have discovered the Odin Project , a free online curriculum for web development. (Check out this post for some advice on following the Odin Project.) So far, it has been fantastic; I have a real sense of progress and I am accomplishing something. I am halfway through designing the Google Search page (it's not as easy as it sounds).           Here's an update on the courses I'm working through: Saylor Academy-CS102: Not as well resourced as the first course. I'm having trouble with the C++ compiler, some of the Unit 1 resources are a little opaque,...

A story I wrote for my HTML class.

<!DOCTYPE html> <html>     <head>         <title>  A Story   </title>     </head>       <body>         <h1>             Alexander Ramin         </h1>             <p> Ever since I was young I loved computers and peanut butter. My first memories are of submitting proofs to the Cray supercomputer we kept in our garage. My father, an enthusiast himself, built it from his boyhood collection of bottlecaps and recycled vacuum tubes. To save money, we generated power from monkeys in running wheels. None of them developed intelligence, though many pulled muscles.             </p>                       <p> Beyond those fond early memories, there is little to recall. ...

Week 2 of Computer Science

"Having spent the last 11 days studying coding and computer science theory I can now claim to be an expert. " If only it were that easy. I have however, made plenty of progress: coding gets easier every day, the hours fly by as I read, code, debug, search forums, stare blankly, recode, then take a small bow when my program successfully adds 2 integers. I have now written around 20 original programs in Java (original in the sense that I composed them; they don't do anything original). The two data science courses on edX (Analytics and Foundations) are relatively straightforward implementations of R (there isn't any programming involved). They provide a good review of intro-level Statistics. The Data Science Specialization on Coursera (offered by John Hopkins University) is very challenging, especially the Intro to R Programming. There is a steep learning curve involved in completing the programming assignments. There are 3 parts to assignment 1: I spent Tuesda...

Current Courses

          In an attempt to enlarge my skill-set and keep my brain gears well oiled, I am studying computer science, programming and data analysis. Fascinating courses on every subject are easy to find these days and data science seems to be extremely popular. Programming/Computer Science    1.  At the moment, I am working through the free Saylor Academy Computer Science Pathway. Unlike MOOCs offered by universities, Saylor Academy comprises courses cobbled together from already existing online resources (though there are some original resources).            So far, I am very impressed with the Computer Science course ( CS101 ): it is  logically structured (each new unit builds clearly on the last) it provides multiple resources on each concept (videos, readings, interactive pages)  it includes regular assessments (including self assessed programming assignments)         ...

My First Control Structure in Java

Here is my first original program, written after 5 days of learning java. The goal was to include a looping control structure with decision making paths (if/else). ____________________________________________________________________ import java.util.Scanner; public class AverageTemp  { //Calculates the average temperature of weekdays in centigrade  public static void main(String[] args)  { Scanner keyboard = new Scanner (System.in); double monday, tuesday, wednesday,thursday,friday; char option; //User input for five weekdays do { System.out.println ("What was the average temperature on Monday?:"); monday = keyboard.nextDouble(); System.out.println ("What was the average temperature on Tuesday?:"); tuesday = keyboard.nextDouble();  System.out.println ("What was the average temperature on Wednesday?:"); wednesday = keyboard.nextDouble(); System.out.println ("What was the average temperature on Thursd...