Google Delivers New Java-like Language: Noop

Google Noop
The developers over at Google have come up with Noop, a new language that runs on the Java Virtual Machine.

“Noop (pronounced ‘noh-awp,’ like the machine instruction) is a new language that attempts to blend the best lessons of languages old and new, while syntactically encouraging industry best-practices and discouraging the worst offenses,” according to a description of the language on the Noop language Website.

Noop supports dependency injection in the language, testability and immutability. Other key characteristics of Noop, according to the Noop site, include the following: “Readable code is more important than any syntax feature; Executable documentation that’s never out-of-date; and Properties, strong typing, and sensible modern stdlib.”

Read More

I suppose your thinking why another language? Google explain this:

Our experience has been that developers often create code that’s hard to test and maintain, without realizing it. On a large software project, this can create problems later on for the whole team. In analyzing this problem, we found that the root cause in many cases was language features – like globally visible state, misused subclassing, and API’s that are easily misused. Noop will try to avoid these problems.

Noop avoids these problems by being opinionated, meaning it pushes you toward using good practices while developing software. It does this by;

Noop saying Yes to Noop saying No to
  • Dependency injection built into the language
  • Testability – a seam between every pair of classes
  • Immutability
  • Syntax geared entirely towards readable code
  • Executable documentation that’s never out-of-date
  • Properties, strong typing, and sensible modern standard library
  • Any statics whatsoever
  • Implementation inheritance (subclassing)
  • Primitives
  • Unnecessary boilerplate

I’m still only learning Java myself, have to this year with the course. But I hope to mess around with Noop sometime soon in the future! 🙂

Snipt.net – Store your Code Snippets Online

Recyclable Code

Often when your programming well you find yourself with a lot of reusable or recyclable code. Everyone has their own little way of keeping all this code and organizing it etc. etc. for their next project. However today I found a great website now that I need my code snippets in more than one place, Snipt.net . Not only can you store all your code privately with the ability to tag it and have it highlighted. But you can browse through the public code also, for when your really stuck with that problem! 😉 This will certainly be a website I’ll be adding to most used for ’09

Learn PHP: Class Three, Includes and Requires

Today we are going to learn all about include and require! Include and require are handy to use not only in your php applications, but in general website design for sidebar’s and what not! So.. yeah.. 😛 Moving on!

Include and Require include a file within another PHP script. There are four ways of doing this:


include();
include_once();
require();
require_once();

Now using them is seriously simple. Lets say you have a file called “sidebar.php” with your links? All you have do do is the following:

include('sidebar.php');

One thing to remember is how to traverse directories in PHP. For instance, if my file “sidebar.php” is in a folder called “includes” you could go:

include('includes/sidebar.php');

Or another approach, if my file “sidebar.php” is in the parent directory, you could go:

include('../sidebar.php');

Now why are there four different ways to include them I hear you ask! Well they are pretty simple.

Include and Require are practically the same, apart from the way they give out errors. Include will continue parsing your script and just shove out an error. Require however will stop the whole script to give you an error. Really it’s all down to what you want.

Include_once and require_once you probably guess only allow you to include the file once. This is not only more secure but stops from silly errors where the file was just included and variables were overwritten halfway through the script. Again they give out the same errors as include and require.

So lets go over one of each!

include('sidebar.php');
include_once('sidebar.php');
require('sidebar.php');
require_once('sidebar.php');

We really are spoiled for choice aren’t we! 😉

Programmers Day

Interesting Fact:
Today, it is “The Day of the Programmer”. Since yesterday this has been made an official Russian holiday!
The Russian president only made this yesterday as seen here..

The day of programmer will be noted on September 13 (in 256- y the day of year), if year is bissextile – on September 12.

What is Programmers Day?
Programmer’s day is a whimsical “holiday” on the 256th day of the year celebrated mostly by computer programmers (reason: 256 = 2 to the power of 8 = the number of values representable in a byte of data). Traditions include drinking, behaving silly, coding silly programs, mini computer games, playing with old computers, etc. Programmer’s day usually falls on September 13th; on leap years, it is September 12th.

Why the 256th Day of the year?
A byte can have 256 possible values, bytes are very important to programmers. Not because they are required for programs to work, but because the payroll system and Krispy Kreme doughnut cash registers require them.

Irish?
We need to get onto Brian Cowen to make an offical holiday out of this!  😀

Learn PHP: Class Two, Ifs And Elses

Moving on to PHP’s If Else Statements.

Here is one in action:

if ($condition) {
echo 'condition is true';
}

Simple enough? To start with as you can see you first write the statement name, in this case “if”. Then you enclose your condition in brackets, [A condition is essentially a question you ask PHP.] then you add an opening “curly bracket”. The opening curly bracket basically defines the start of the code to execute of the condition of the statement evaluates to true. In this case we are wanting PHP to output the text “condition is true” if the condition is true. Then finally we have a closing curly bracket.
In the above example the entire condition has simply been set to the variable $condition. Therefore what we are asking PHP is does the variable $condition exist, and if it does, does it have a value that is not NULL. [Null = Nothing, zero, zilch] In this case we didn’t actually define the variable $condition therefore the statement will evaluate to false and the code within the statement wont be executed. Therefore the above will output nothing at all. However the following code:

$condition = "Here!"
if ($condition) {
echo 'condition is true';
}

Would output “Condition is True”.

Now if statements are pretty useless on their own! What you really want is if / else statements, which we will look at here!

$condition = 10;
if ($condition == 5) {
echo "condition is 5";
}

Basically here the variable condition is 10. PHP Checks if it is 5. As we all know 10 is not 5, so PHP does nothing. However in this statement:

$condition = 10;
if ($condition == 5) {
echo "condition is 5";
} else if ($condition < 5) {
echo "condition is less than 5";
} else {
echo "condition is $condition";
}

We have an if statement, an if else statement and an else statement.
Basically the code explains it, but the condition is 10. If the condition is 5, PHP will output that it is 5. Otherwise if the condition is less than 5. PHP will output that it is less than five. Lastly, if nothing matches in the if or else if statements PHP will output its else. Saying Condition is 10.

A last sample before we head off.

$condition = "yes";
if ($condition == "no"){
echo "condition is false";
} else if ($condition == "yes"){
echo "condition is true";
} else {
echo "Something happened to the variable";
}

Here you can see that the condition is actually a word. PHP checks it just like it would a number and outputs all the same. Here PHP would output “Condition is True”.

And that’s it for today! Next week we have “arrays” so until then practice! 🙂

Learn PHP: Class One, Echos and Variables

So now that we have done the Prep Class its time to move on to the actual learning!

Echoing:

echo "text here";

OR

echo 'text here';

Simple as that, thats how you get PHP to output some text. Whichever you use is really up to you, there is pros and cons to what you can do with each, you can read about them here.

Comments:
Comments are really important within any programming language, really to tidy up your code and so you remember what each bit does later on. PHP supports two different ways of commenting, C++ Style and Shell style. I will just stick with C++ Style for today

Example’s of echo’ng via C++ Style are as follows:

echo 'Hi'; // Output: Hi
echo 'Hi'; /* Hi */

// Comments out the rest of the line. While /* */ lets you comment as far as you want, just remember to close the comment! If you don’t get me I’ll do a quick example:
This will stop PHP echo’ing “Hi”


/*
echo "Hi";
*/

This however will not.

//
echo "Hi";
//

But this would

//echo “Hi”;
/* style are obviously much easier for commenting out blocks of code. But for just adding a quick comment // style is alot better!

Variables:


$variablename = "Variable One";
$variablename = 'Variable One';
$variablename = 1;

Variables are vital within your programming language, you will use them over and over again! Again, you can use single or double quotes, both with their pros and cons, you can also use numbers, or other variables. I’ll give you a quick example of adding within variables.

$add = 2 + 1;

That variable would add 2 + 1. But how to get what the Variable says? Well you just use echo again!

$add = 2 + 1;
echo $add;

The output of that would be:

3

Nothing more, nothing less.
You can also add variables within variables. As complicated as that sounds its pretty easy. I’ll give you a quick example.


$one = 1;
$two = 2;
$add = $one + $two;
echo $add;

So lets go over what we just learnt with a quick script;

$name = 'Sean'; // My Name
$age = 16 +1; // Seventeen!
$nextage = $age +1; //Age I will be next year.
echo 'Hi my name is ';
echo $name;
echo ' and I am';
echo $age;
echo 'but I will be'
echo $nextage;
echo 'next year!'

Of course that is probably the longest, but easiest way you could do it! The faster way to do it would be:


$name = 'Sean'; // My Name
$age = 16 +1; // Seventeen!
$nextage = $age +1; //Age I will be next year.
echo "Hi my name is $name and I am $age but I will be $nextage next year!”"

That’s defiantly the handiest way to do it! Don’t worry I’ll go a bit more into that in the next lesson! Until then, practice!

Learn PHP: Preparation Time

Nearly two or three times every week I get someone asking me to teach them how to program, many of these are from an online game I help out with called Injustice. Its amazing really that people that there is some hidden secret to coding and that I can just send you a link or say one or two lines and they will be able to code! I’m telling you people, its not magic!!
So instead of repeating myself over and over I’m shoving this article in here! Mainly because of this, secondly because I believe people can learn PHP a little easier than some of the websites make it. So on with the show!

Ok, so to actually learn PHP the best way to do it will be to install Xampp.

You can download Xampp here.
Xampp will install Apache [Webserver] MySQL [Database] and PHP among other things, but that is all we will be using! Once you download the file, run it, its a graphical installer for windows.

For linux users, I’m sure you can work out how to install it! 😉

Once installed start the Apache and MySQL services, the control panel will be in front of you, all you have to do is tick the boxes! Yep thats it, your done installing.

Now, to put files into your “webserver” you will go into C:/Xampp/htdocs/ if you installed it in the default directory. So lets create a folder called project. And put a file called index.php in there. In the index.php file just put the word “Test”. Then all you have to do is go to, http://localhost/project/index.php and if you did everything right you should be looking at a webpage that just says “Test”. There you have it! You are ready to learn PHP!