More results...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
post
page
Python IDE Dashboard

JavaScript – How to read through a text file…

In this project we are looking at how to read through a text file using JavaScript. We will store a list of pupils in a text file. We are going to read through this list display its content on the webpage, one line at a time.

Step 1:

Using notepad, create a CSV file called ClassList.csv (Instead of using comma we use a pipe | as a separator)

John|Lennon|Male
Katy|Perry|Female
Robbie|Williams|Male
Amy|MacDonald|Female

 

Step 2:

Create an HTA application (See our blog post about HTA application).

Step 3:

Add the following code somewhere in the body section of the page:

<input type="button" onClick="Javascript: displayClassList();" value="Display Class List" />
<div id="searchResults"></div>

Step 4:

Add the following Javascript  code in the head section of the page (using as <SCRIPT> tag):

function displayClassList() {

var path="ClassList.csv"
var fso = new ActiveXObject('Scripting.FileSystemObject'),
iStream=fso.OpenTextFile(path, 1, false);

document.getElementById("searchResults").innerHTML="";

while(!iStream.AtEndOfStream) {
    var line=iStream.ReadLine();
    document.getElementById("searchResults").innerHTML += line + "<br/>";
}

iStream.Close();
}

The purpose of this code is to stream through the text file, which means to read it one line at a time.

Your challenge


Use and tweak this code to only display the boys from your class list.

HTML Applications (.HTA)

Have you ever heard of HTA files aka HTML Applications? If you not here is what you need to know about HTA:

  • HTA files look very similar to HTML files but when you save them you need to give them the .hta extension.
  • HTA understands everything the browser understands including HTML, Javascript and CSS code.
  • Microsoft described an HTA as running much like an .exe file.
  • HTAs will run from your system so they are not bound by security or privacy concerns that are found on the Internet.
  • Which means for example that HTA can be used to read and write on local text files using Javascript.
  • HTA will appear in a window that can be customised (Icon, toolbar…), so they look more like a Desktop application rather than a webpage.
  • HTA applications need the following tag in the <HEAD> section of the code:
<HTA:APPLICATION
border="thin"
borderStyle="normal"
caption="yes"
icon="./favicon.ico"
maximizeButton="yes"
minimizeButton="yes"
showInTaskbar="no"
windowState="maximize"
innerBorder="yes"
navigable="yes"
scroll="auto"
scrollFlat="yes" />

Why should you try HTA applications when learning to code using JavaScript?

  • For all your HTML/Javascript projects where you need to bypass browser security restrictions such as accessing local text files.
  • If you want to create Desktop applications (rather than webpages). You can build them in HTML, CSS, Javascript but the application will look like a desktop application with its own window. It will not be displayed using the web browser.
Tagged with: , , ,

Python Patterns

Here is a quick challenge to focus on the use of loops, nested loops and string manipulation using Python.

Let’s look at the following code:

for i in range(0,9):
    st=""
    for j in  range(0,i):
        st = st + " "
    st = st + "#"
    print st

btnTryCodeOnline_Over

This code uses nested “for” loops (a loop within a loop). The output will be as follows:

PythonPattern-1

Note that there are sometimes more than one solution to the same problem. Look at the following code which makes more effective use of string concatenation techniques:

for i in range(0,9): 
    print (" " * i) + "#"

btnTryCodeOnline_Over

This code would generate exacly the same outcome. It is more effective as it performs the same task using less instructions and iterations.

You can now adapt these techniques to try to produce the following patterns…

Python Patterns

Tagged with: , ,

How to create a bouncing ball in Scratch

BouncingBallStep 1 – Change your main sprite to a ball

BasketballSpriteStep 2 – Add the following script to your sprite:  BouncingBall_Script

This tutorial is available as a pdf: How to create a bouncing ball in Scratch

See how to create a Pong game using this code: http://scratch.mit.edu/projects/10128515/#editor

Tagged with: , , ,

What’s an algorithm and what is pseudo code?

Check this video/animation from Ted Ed to understand what we mean by algothirm and pseudo code.

Source: http://ed.ted.com/lessons/your-brain-can-solve-algorithms-david-j-malan#watch

 

Tagged with: ,

How to score points when your sprite collides with another sprite (in Scratch)

Scratch Tutorial -How to score points when your sprite collides with another spriteThis tutorial is available as a pdf.

It focuses on how to create a score variable for your game and how to score point when your sprite catches/touches/collides with other sprites.

Download this tutorial as a pdf:

How to Score Points when colliding with objects

Tagged with: ,

How to create flying/falling objects in Scratch

In this tutorial we will get a spaceship to fall from the top to the bottom of the screen.

scratch_FlyingRocket

Add the following code to your sprite (e.g. Spaceship):

scratch_FlyingRocketScript

xy-gridTo understand this script you need to understand how x and y coordinates work in Scratch.
When using scratch the “playing area” is based on the following grid:

  • The centre of the grid is (x=0, y=0)
  • The bottom left corner is (x=-240, y=-180)
  • The top right corner is (x=240, y=180)

 

You can download this helpsheet as a pdf: How to create flying or falling objects in Scratch

Tagged with: , , ,

How to create a timer in Scratch?

Step 1 – Create a new variable called “timer”.

Create a new variable called "timer"
Step 2 – Make sure you have two backdrops for your stage (The main background for your game and a Game Over background).

timer_BackDrop

Step 3 – Add the following code to your stage:

timer_ScratchAnnotatedCode

 You can download this helpsheet as a pdf: How to create a timer in Scratch

Tagged with: , ,

How to control your Sprite in Scratch…

arrowKeys… using the arrow keys

 

Step 1 – Add the following code to your sprite:

arrowKeys_ScratchStep 2 – If you don’t want your sprite to rotate, click on the blue “i” icon on your sprite. Try these “rotation style” options to find the one you need.

Scratch_SpriteRotation
mousePointer…using the mouse pointer

Instead of using the arrow keys you may prefer your sprite to follow your mouse pointer.
To do so add the following code to your sprite:

mousePointer_Scratch

You can download this helpsheet as a pdf:   How to control your sprite in Scratch

Tagged with: ,

Why are there 1024 bytes in a kilobyte? (instead of 1000)

Here is a good brainteaser when teaching binary code…

Remember: Computers can only work with binary code.

Computers don’t really like the number 1000 because in binary it’s not that straightforward:

binary1000The binary code for 1000 is 1111101000

However computers do like the number 1024 because its binary code is 10000000000.

Binary1024That’s why there are 1024 Bytes in a KB, 1024 KB in a MB and so on…

 

Tagged with: ,