Open is a web application created by the West Side Story's Engineering and Development team. It's designed so that anybody, regardless of experience, can change properties of a webpage with ease.

Inputs for colors can be simple colors, like "red", "green", "white", etc. as well as hexadecimal colors for even more specificity.

Inputs for font faces can be "Helvetica", "Arial", "Times", and the like; these are basic webfonts.

Inputs for link formatting can include "underline", "line-through", or "overline".

If you have suggestions for fonts or additions to the list of properties, send us a personal email or talk to us in person.

WSS Engineering

A collection of stuff I think is cool.

I love what I do and I love making a difference through what I do. Seeing someone else smile because of something I did is my greatest goal.

Who am I?

I am Anthony Pizzimenti.

I'm a Java and web engineer from Iowa City, Iowa. For the last year, I've worked freelance, improving my skills in frontend and backend web development as well as software engineering. I now work for the West Side Story as a web developer, IT consultant, and podcast guy.

I don't have a lot of spare time, but when I do, I play ice hockey for the Varsity high school team (also, LGRW!). I like doing crossword puzzles and playing StarCraft II, probably my favorite video game of all time. I also enjoy playing recreational soccer (although I'll be trying out for the school team next year) with my friends and cooking. My friend Louis and I run a podcast called TechTalk, where we discuss recent news surrounding the technological news sphere as well as do a whole portion of the show dedicated to helping people troubleshoot their PC problems on reddit.

My Tools

Brackets, my HTML/CSS/JS editor. With a few added extensions, it (almost) becomes an IDE.
eclipse, my Java IDE. It's a great editor and not TOO too heavy. Easily my favorite feature is auto-building.
Not really a tool, per se, but Chrome is a great browser. I'll post a list of the extensions I use soon enough. Also, the devtools are great.
I use the command line for a lot of stuff. I use Git to organize and publish my work, and as I don't really like the desktop app, I use the command line. I also use SASS as a preprocessor, so I run SASS commands from the command line as well.

I'm Anthony Pizzimenti. I'm a Java and web engineer from Iowa City, Iowa. This is my blog about music, web and software engineering, robotics, dinner parties, and whatever else I can muster. This is the mobile version of the site, so if you want a better experience with more content, visit this page on a computer.

The Simple Blogger theme edited by Anthony Pizzimenti © 2014, 2015.
Full mobile version by Anthony Pizzimenti, © 2015

February 27, 2015

Robots

Intro

Today was spent building a robot.

The Hardware

So my friends Louis and Ike are in a class called Aerospace Engineering, taught by one of my favorite physics and engineering teachers. There's a set of hardware extremities like wheels, SONAR detectors, and bumpers that do all the analog work. Most of the structuring is done on steel rods (think Sandlot-style robots), and all of it is powered by battery packs.

The Programming

The robots are programmed by a language based off C called ROBOTC. There's a good informational video that explains how it's similar to C and its interaction with each bit of hardware.

The Problem

So David, Derek, and I were called in to help fix this robot. We sorted through the code with Ike, trying to find a logical error and went with Louis to try and test to see how the hardware was working. Actually, we're doing it right now - it's kinda scary to see what's happening. For example, if you have a statement like this

if(SensorValue[Sonar]<6)
{
    sleep(500);
    Motor[RightMotor] = 30;
    Motor[LeftMotor] = 120;
}

else
{
    go = 0;
}
which says 'if the SONAR senses something within 6cm, I'll stop for 500ms, then the right motor will turn at 1/4 the speed of the left motor to turn right; otherwise, don't go'. However, the value SensorValue[Sonar]>6 creates an issue. The SONAR sensor reads the distance to an object, but when it tries to measure a value farther away than its range, it returns a value of -1. This generates an error because even if there's nothing in the way, it'll turn.

February 24, 2015

Coding

Intro


So I've been working really hard on schoolwork for the past couple days. Usually, my comp sci periods are used for other things like extra homework, browsing reddit, or writing blog posts. Recently, however, I've actually been doing work in the class. I'll show you a little of what I've been doing.


Unit 7 Assignment 1


This assignment, we were supposed to simulate the Game of Life using 2D arrays. The main issue was getting the neighbor counting method called neighbors() to work correctly, and then working out the changeCells() method to address all situations.

Here's the neighbors() method:

public int neighbors(int row, int col)
<>{
    int count=0;

    for(int i=row-1; i=row+1; i++)
    {
        for(int j=col-1; j=col+1; j++)
        {
            try
            {
                if(board[i][j].equals("*"))
                        count++;
            }
                
            catch(ArrayIndexOutOfBoundsException except_1)
            {
                continue;
            }
        }
    }
        
    if(board[row][col].equals("*"))
    {
        occupied = true;
        return count-1;
    }
        
    else
    {
        occupied = false;
        return count;
    }
} 

This wasn't too hard, but identifying and isolating the area which needed the try/catch block took a little thinking. Also, if the return count-1 isn't included, the whole game gets thrown off.

Then came the changeCells() method, which is the main driving force behind this project. It calls the neighbors() method to identify how many neighbors each individual cell has, and then, based on that number, either generates a new cell, keeps the current cell, or kills the current cell.  This process goes through the entirety of the 2D array until a new generation is created.

Here's the changeCells() method:

public void changeCells()
{
    String[][]temp = new String[6][6];
     
    for(int i=0; i<board.length; i++)
    {
         System.arraycopy(board[i],0,temp[i],0,board[0].length);
    }
     
    for(int j=0; j<6; j++)
    {
        for(int k=0; k<6; k++)
        {
            int num = neighbors(j,k);
             
            if(num==3 && occupied==false)
                 temp[j][k] = ("*");   
            else if((num<2 || num>3) && occupied==true)
                temp[j][k] = (" ");
        }
    }

    board = temp;
}

Making sure that each 'if' statement was correct was crucial, but they were spelled out quite reasonably in the project description.  This project was fun and a thinking challenge for a while not because of its complexity, but because of the variety of different (wrong) answers you can get while working on it.

Unit 7 Assignment 2


This one was a little more interesting. A class called electionResults needed to be created, and this class had a method called (ready for it?) electionResults() which has three parameters: the number of candidates, the number of precincts, and a 2D array associating the two (candidates = rows, precincts = columns). The voting results weren't generated randomly, but taken from text files. The totals per precinct and per candidate had to be totaled, and then a winner was determined based on the greatest percentage-getter out of each set of elections.

Everything else was nice, with just some simple sorting and formatting going on, but determining the winner efficiently was fun to think about.  Since the total votes of both the precinct and candidate types are stored in independent, short arrays, I opted to use the sequential search method because it'd make short work of the small arrays and could quickly identify the greatest number in the array to determine the winner.

This sequential search

int winner = 0;
int small = b[0];

for(int ex=0; ex<b.length; ex++)
{
    if(b[ex]>small)
  winner = (ex+1);
  else if(b[ex]==small)
winner = (ex+1);
}

addresses two conditions: the first is if a number is greater than the first number in the array (as defined by the variable small ) then the candidate equals the array position plus one. If the first number is the greatest, however, it also returns the position plus one.

These projects are fun to work on, and I thoroughly enjoy them. I like the thinking and the analysis, and sometimes just having the pleasure of saying "I did that - I did that" makes it that much better.

Others

Intro

Last night, I had the privilege of sitting around a room, listening, discussing, and interacting with people I had never met before. I hope to meet them again.


At First


Initially, I thought I was in for an antisocial night of awkward cooking with my dad hovering around instructing and doing the majority of the work. I was skeptical about being around other people simply because I thought I was going to be uncomfortable. That's pretty unfair both to them and to myself because I didn't even give them a chance before feeling like I wasn't going to be accepted within the group or have a reasonable time around them. My dad bridged this gap long ago and, much like last night, wasn't preachy or socially reserved, but (quite) funny, relatable, and more than anything else, an interesting person.  It's hard to see from the kid's view, as they're the kid - they're used to the parents being guiding, the disciplinarian; it's hard to see parents as people on their own.

Cooking


After all of this went down, we got to the cooking. It was crowded in my small kitchen, but everyone meshed together well. I talked to people about soccer, music, and their lives at the University. Having this time to spend with others and share an activity my family frequently partakes in was enriching both for me and for the students spending time at our house.

In short, it was really damn cool.

I'd do that again in a heartbeat.

February 19, 2015

Multi-Dimensional

Intro


So I kinda want to talk about people and what makes people people this time around.  I feel as if I've been walking through the halls of my school and looking around only seeing a few individuals, and others that kinda blend together.  Everyone has some kind of personality, even if it is buried quite deeply.  Being able to find it is the fun part.


Categories


Now, the definition of 'personality' points us to analyzing people and categorizing them.  This is obviously and unarguably a human behavior, as categorization is the basis of our memory and greatly affects how we interact with pretty much everything.  A popular NPR program called Invisibilia did a great show on categorization a few weeks ago, and it was quite entertaining and helped me realize that we not only do this to objects, but we do it to people as well.  Think about it - it's not even a matter of if you do it, but a matter of how much time it's been since you did it last.

So, yes, we have categories.  The first that comes to mind is the popular category (of course, what else).  There are certain characteristics which may differ based on location, age, or whatever, but there's a generic mode which is typically followed.  And what I've come to notice is that these people aren't any more popular than people not in the group, they have just assumed (perhaps wrongly) that they occupy the highest echelon of the social spectrum.

There are others, of course, but they seem to fall underneath, to the wayside.  Why?  There's a lot of psychoanalysis behind stuff like this, but the 'safety in numbers' idea comes to mind here. I don't necessarily mean safety from bodily harm, but safety in terms of security of the self; surrounding one's person with friends (whether they're loose or close friends) will provide a false sense of confidence in one's persona - once they're gone, the socialite becomes deflated.

Redeeming characteristics are present in everyone, however, and it's hard to look past the shell sometimes.   Everyone is transparent, even if it's only in small degrees.

Finding a Source


Talking to someone is the first step.  Just having a conversation is the most definite step in the right direction for anybody wanting to get to know anybody else for any reason.  Communication like this will lead to learning.  Like my friend Logan, who was (for a while) considered a nerd, was in love with Taylor Swift (and proud of it, I might add).  Looking at him do his homework and compete in intellectual competitions, you couldn't even begin to understand his dedication to her - it was intense. This, obviously, made me break a stereotype.  Yes, they exist for a reason, but even those belonging solidly to a category have a fountain of creativity and uniqueness that cannot be found in another.  Being able to find this in others is exciting, and is a motivating factor in not being nice to people, but giving out genuine kindness; your peculiarities may not be the same as someone else's, but all of us have them.  We all belong to the same category after all.

R-E-S-P-E-C-T


Cheesy and kinda stupid, yeah, but it's worth.   I talked in the above paragraph about everyone belonging to the same category, and that's true.  But another main component has to be taken into account, and that is the one of respect.  Hard to understand and even harder sometimes to give to others, respect is omnipresent.

In terms of respect, I have a basic policy that I try to follow: 'give increasingly larger amounts of respect until it's deemed that [insert other person] doesn't deserve it'.

Now, fighting through the categories I talked about earlier is what makes this incredibly hard - treating everyone the same way with the same level of level-headedness and intelligence is what's supposed to happen, but it gets thrown out the window when a pre-conceived idea of what a person is going to be like overrides the respect policy.  And this is where the internal struggle occurs: do I judge them based on how I think they should be, or what they're going to say five minutes from now?

It's a million-dollar question, and it's a fuckin' hard one to answer.

A dilemma, yes, but an impossible one?  No.  It's a hard decision, but it's gonna come down to whether you want to feel better and more confident about dealing with others now or later.  Most would say now, but that'd involve reanalyzing and actually confronting another human being, so that's a turnoff.  And then your stereotypes might even be proved right, and you'll feel smug and proud of yourself.  But eventually, everyone will have to step up and actually see that nobody is at the higher end of any spectrum.  Finding a way to beat your ideas of what people might be like is as simple as asking a few words (toned as a question) and then replying, making a joke, doing something goofy, or taking a stand for someone you might not have otherwise been willing to defend.

It's all the same for everyone.  The spectrum is grey area, a pool where everyone drifts and knocks into each other like bumper boats.  It's more worth it to go out in the middle and bump into all the other boats and have fun than it is to piddle around in the corner because bumping into the other boats is uncomfortable.

We're all people.  We might be different, but it's our differences that make us equal.  Whether you take it to heart or not is up to you to decide, but willingly diving under now will make you much more accustomed and willing to deal with everyone than plunging in later.

February 18, 2015

First, Some Ambience

Intro

If you didn't read the sidebar, you should.  This post is about things that I love to do, and things that I love to do a LOT.  This might be a bit of a long read, but it's my first post, so some slack is expected.

Music


I like music.  It's an awesome thing to experience and be involved in.  I'm not an accomplished musician by any means (talk to my recording partner Louis about that), but I feel that I have a reasonable ear and an amount of knowledge that the average listener won't have.  I have an affection for the music of the late 19th and early 20th centuries, especially stuff from Camille Saint-Saëns and George Gershwin.  Saint-Saëns is intriguing because of his unusually complicated music but careful structuring that allow the sound to be somewhat accessible to new ears; Gershwin, on the other hand, sounds like the 20's.  Saint-Saëns earlier works were considered 'musical poetry', and such style is exemplified in pieces like Danse Macabre.

This is not a picture of Camille Saint-Saëns


Gershwin, interestingly enough, studied classical music (such as Saint-Saëns) in France in 1924, three years after Saint-Saëns death.  Their musical styles differ, however, as you can hear in Gershwin's Rhapsody in Blue (this song is featured in the 2013 film The Great Gatsby in Gatsby's introductory scene).



They're both great works, and somewhat representative of what each composer has to offer.

Also, if you read the sidebar, I'm a Bluegrass fan.  I love Tim O'Brien, and he's well-characterized by his instrumental, Land's End/Chasin' Talon.



Other great Bluegrass artists include Alison Krauss and Union Station, Rich Mullins, and a few others I'll talk about down the line.

Video Games and Other Activities


I looooove video games.  I'm an avid player of StarCraft II, and it's easily my main game right now.  I like fast-paced 1v1 action, and I'm not much of a team game fan (like League of Legends, DotA2, or CS:GO).   I played Brood War back in the day (admittedly quite poorly), and I tried to play Runescape dedicatedly for a while and lasted for an entire summer, but never played it regularly after that.  I've always been playing StarCraft II, and even though I'm only a Platinum Terran, it's still fun for me.  I also love watching tournaments just because of the sheer excitement and drive to play I get from spectating.  Sometimes I think about how that works - simply seeing something you have an intense passion for spurs a reaction, a strong desire to work and progress in that passion.

Anyways, I am a Nintendo fan (Super Mario Sunshine ftw hell yeah), and I like to watch SSBB and SSBM tournaments.  I'm horrible at both games, but they're fun to watch and to see how open and down-to-earth the competitors are kinda makes me feel like the scene for these games could get really big really fast.  I recently watched the Apex 2015 tournament, and it was much more relaxed in terms of player restrictions than, say, a professional StarCraft II tournament.  In SCII, players have to sit in soundproofed boxes and stuff.  In SSBB, I thought it was awesome that the competitors were sitting next to each other in the open air (even to the crowd), talking and laughing in between matches.  That's what I kind of imagine in terms of my eSports ideality: in the end, it's all about having fun.  Playing the game for fun with the people you like to play it with, just like when we were kids.

That's good for a first post.


I think this went well, I really do.  I'm excited to write another post for everybody, and I appreciate everyone that even decided to glance at the article.  Thanks for reading everyone, and I'll be back soon.