Month: September 2012

What does it take to become a computer programmer

So this thread on Slashdot got me to thinking.

A few years back I was doing program reviews for the State Department of Education. It was an eye opening experience I’ll tell you that. By and large most of the teachers I had interacted with were on the ball, but there were a couple that had I the ability, I would have terminated immediately.

One was a class in which they were learning about the Microsoft Office suite. A laudable goal I suppose. But me being the never happy with the minimum type had a sour taste on this review.

Why? Because on the day we were there the class was working on a payroll spreadsheet. But what really caught my attention was the fact they were using a tax lookup sheet, a physical piece of paper that showed the tax for a given amount.

So I asked the teacher if she had anything planned to use VBA or Visual BASIC for Applications.

The teachers answer was that you needed all sort of math to program a computer and my response was “If you have a semester of Algebra I you can get by.”

In fact I’ll clarify, all you need to do is understand Boolean logic.

There are several constructs in Boolean:

AND
OR
XOR
NOT

Believe it or not, you learned about this in Algebra I. Yes you did, because Boolean math aka Logic is part of it.

I’ll take it one by one. But first know that for an evaluation to be true the conditions particular to the operation need to be met.

In the case of AND, both inputs need to be true in order for the output to be true.

In the case of OR, only one or both of the inputs need to be true for the output to be true.

In the case of XOR (Exclusive OR), only one of the inputs can be true, not both, for the output to be true.

In the case of NOT, the input is inverted. If a true condition is the input the output is false.

As for mathematics themselves, if you know about integer operations such as modulus, absolute value, and a few other tricks you have the skill set to learn a programming language.

All you have to do is learn the syntax of a programming language. The BASIC language is fairly forgiving. But PHP, Python, and a whole slew of languages, even the overly verbose COBOL use plain English in most cases.

Sure, in some there are constructs like:


if(a && b = 1)

Which translates to do something “if both a and b are true”.

Yeah that simple.

A loop:
for(a=0,a<=10,a++)

Translated that means execute a loop using variable a as the index. Continue to run the loop while a is less than or equal to 10. The final part that ‘a++’ says to increment a.

Simple.

That’s C style above.

BASIC is even easier.

if x=y then

Whatever follows the ‘then’ keyword is executed if the test x=y evaluates as true.

So let’s say x=1 and y=1 – that would evaluate to true because X=Y.

The for loop:

for i = 1 to 100

Use variable i as your index variable. Loop through until 100 loops.

Hope that demystifies programming just a little bit for you.

Brain Tank Mini Con 2012 wrap up

Wow – this was quite an interesting mini-convention.

image

And yes, the above is my Staff badge from the event.

The Laser Maze was cool, so too the Lock Pick Village.

The presentations were fantastic!

Stand outs:

Evolutionary Bias in Social Engineering: An Anthropologist’s Perspective presented by Randy Rose. He went into some detail about genetic propagation and even touched on the fact that the game is rigged. Rigged because women are born with all the eggs they’re ever going to have whereas we men keep making more sperm.

I should have voiced that while men continue generating sperm, the quality of said sperm decreases with age which to me kind of makes sense.

Appropriate Technology – Making for Emerging Markets presented by Peter Haas was interesting too. He explained how he worked for a company that essentially translates inventions for use in the non-developed world.

Electronic Cyber LLC Hi-Jacking presented by mudsplatter told the tale of how his LLC got hijacked in Florida. An LLC is a Limited Liability Corporation. He also told us how using a fake ID (Which btw, are still fairly easy to come by!) you could take out credit in the corporations name to the tune of about $50,000, do it to ten companies and you’re talking half a million dollars. I did make the comment that this is a common method that can be used in just about any state.

Drink all the booze. Hack all the things. presented by Conrad Constantine. This one was an enjoyable meander through Conrad’s philosophy on things.

Dining Cryptographers: a protocol for anonymous message broadcast presented by Christian Ternus of Akamai was cool too. It had to do with passing messages among 3 or more parties without being detected. Neat little algorithmic explanation.

Information Security Awareness (In 14 Minutes or Less) presented by Roy Wattanasin. This one touched on several tenets of good infosec. After all this was sort of an infosec mini-con.

RFID for Idiots presented by mudsplatter – this one should scare the ever loving daylights out of anyone with a card that has embedded RFID. This includes things like credit cards, passports, etc. Of course there are ways of disabling the RIFD in a card – things like a camera flash circuit hooked up to a 13.56MHz transducer with the card underneath will work. There’s a slight chance of fire though. His best solution, locate the chip and put a nail through it.

Infrasonic Wave Resonance and Human Perception presented by Frank Feeley. Now this one dealt with low frequency sound at high power. The demo after the presentation was quite unpleasant. Maybe next year I’ll build my microwave zap gun and give the amplifier a good slug should he decide to present again.

“So you want to be a wireless hacker…” presented by Casey Dunham. This was an interesting talk about WiFi security. Please keep this in mind – you are responsible for securing your own network. Dunham brought up how he helps out businesses that he frequents when they have wonky WiFi security. But I brought up a point. I said that I knew that Cox and Verizon both push routers configured with easily crackable WEP out in the field. Dunham couldn’t give an answer to that – but I could. You have to EMBARRASS both Cox and Verizon somehow to get them to change their corporate screw ups.

All in all an interesting day. I almost can’t wait for next year.

And I have committed to the regular Brain Tank meetings, we’re going to drill on the amateur radio General and Extra pools. And we should all have Volunteer Examiner credentials. I did it, why the hell can’t we all do it, it isn’t that hard. When I think about this I have a very Borg like attitude – they will be assimilated.

The iPhone 5 fawning on facebook

Ok, I’ve already made a few comments on it. Friends are crowing about it’s fast, thinner, lighter.

So I made comments like “Unless there’s been an advance in battery technology that I missed I can’t see this having better battery life.” and “The battery life must be around 300 milliseconds.”

In the past I’ve dinged Apple’s iPhone because:

1) You cannot change out the battery.

2) Charging via that crappy dock connector

3) You cannot extend the memory

4) Apple blocks a lot of 3rd party apps that let you tether, sling, etc.

So if you want to fawn at the cult of Apple go for it. Just shut the fuck up about it already.

Signed,

A Happy Android user.

Election Results for RI Senate 5, Representative 8

So it looks like Sen. Paul V. Jabour (RI-5)got a huge boost. With all precincts reporting he got 1,210 votes to Maura Kelly’s 813 votes. I’ll have to work on him about his stance on marriage equality.

In the house race, challenger John J. Lombardi took the lead with 741 votes, Libby Kimzey follows with 488 votes, and incumbent Rep. Michael Tarro (RI-8) got just 173 votes. I guess there is still a little bit of love left for Tarro, but none from me.

I did twitter that I’d be holding Lombardi’s feet to the fire. And I mean that. Because his non-answer on marriage equality needs to be firmed up and stated clearly.

In fact he said to me that when RI got it’s LGBT protections in 1996 one man, one Fitzgerald Himmelsbach pushed it. Interestingly enough I live in the place where Fitz once lived. And there’s a diminishing change I’ll be the one to hold Lombardi’s feet to the fire. But I’ll make sure there’s someone that will.

Another thing – this was fairly heavy turnout for primary. But even this was nothing.

In the Senate race only 17% of the people registered in the district actually voted.

With regard to the Representative race, 19% of those registered bothered to vote.

I wonder how different the results might have been if we did a get out the vote effort.

I remember as a kid, the polls used to be packed on election days. Now, not so much. People have become disconnected from the process.

I voted today

RI’s primary falls on the anniversary of that terrible event in NYC some 11 years ago.

Some observations about the election though.

Coming up to the polling place I noted a gaggle of people. In that gaggle my friend, Councilman Bryan Principe was present along with Libby Kimzey and volunteers for Tarro, Lombardi, etc. Shook Bryan’s hand, Libby’s hand and went in and vote.

You see, this primary is pretty important to me. It is the one that determines who my next state rep and state senator will be.

And I’ll tip it – I didn’t vote for incumbent Tarro, Lombardi, or incumbentJabour. I’ll let you figure out who I voted for, just read on. I looked at it is time to switch up a bit, let the women take a shot at it in a district dominated by male candidates over the years.

When it comes to Tarro – I think I’ve written enough on him to indicate we don’t agree on a lot of things, not just the marriage equality issue.

And Lombardi – after hearing his non-answer to the question of equality I just can’t honestly in good conscience vote for the guy.

Kimzey on the other hand – I like her. She doesn’t own property in the district, uses public transportation, and vociferously supports marriage equality.

Now on to the senate:

Paul V. Jabour has been a tad disappointing. He’s a decent guy but his co-sponsorship to close the indoor prostitution loophole was a little boneheaded. And if you watch the video of his answer on marriage equality, it makes it more difficult. I mean the one thing to like about Jabour is that he fund his own campaign out of his own pocket. But that doesn’t balance out on the other side.

Now Maura Kelly – she needs a bit more confidence but she seems to be tuned in. I think she’ll develop nicely in the senate.

When Christians and Muslims take offense to what is taught in public schools

This is ridiculous.

Apparently it’s taking place in Canada. But still, I want to remind them of one thing. If you don’t want your kids learning about homosexuality, the environment etc. then don’t send them to public schools and expect them to cater to your religious whims.

Instead send them to private schools, or Catholic schools, or even Muslim schools. Home school them. But keep them out of the public system if you’re so afraid they might learn something that challenges your religious beliefs.

One warning though – be careful on the Catholic schools. I’m the product of 12 years of Catholic schools. As such, they helped my hone my bullshit detector which ultimately lead to my rejecting organized religion, in fact any religion. This was much to the consternation of my father the God Botherer II. I call him that because my grandfather, we called him Saint Anthony.

And that finely tuned bovine effluent detector, I imagine my aunt isn’t liking it much either, as evidenced by my last post.

The thing is I know how to research things. I don’t have a B.Sc. in Information Science for nothing you know.

I imagine I’d be a nightmare for the likes of the parents in Canada. Someone who went through all that religious dogma and came out as an atheist. Because it is precisely what these parents who want to be notified fear, they fear their kids will learn too much and challenge religious belief.

Good, religious belief needs to be challenged. It’s all based on writings from well over a thousand years ago. And when the source texts suffer from both copy error and translation error, you’re really not getting the WHOLE story.