Category: Technology

  • Building the LongView

    In the spring of 2005 I ran an Indianapolis Game Development meetup called Indy Game Dev. It had one other member. We decided we’d make our own computer game.

    Indy Game Dev Members

    We met at his parent’s house in Fishers where he lived. His family computer was in his parent’s bedroom. I was still working at Old National, 2nd shift, down by the Indianapolis Airport, so it was always late at night when we met.

    Longview Start Menu

    The game was a turn-based game that worked similarly to how Shadowgate worked. It started you off in a room with a couple of options. The scenes were post-modern, urban decayed scenes with relatively little to no characters.

    LongView level One

    We mapped out the first level in a rudimentary drawing. It was a simple layout with a couple of different options. The same game could have been played easily without graphics in a ‘Interactive Fiction’-type game.

    LongView hallWay

    I had just graduated from Indiana University in Indianapolis the year before where I had taken Visual Basic.NET, Javascript, VRML, and HTML classes. In one of my classes I had made several browser-based games. I felt pretty confident.

    LongView attack Mode

    Right around this same time, Meetup.com decided to start charging for running a meetup. I understood, but it was a little more than I wanted to take on financially at the moment so I turned the meetup over to the other guy and left.

    The End of the Line

    I learned just enough about game design and 3D engines to discover I didn’t really want to design my own game. I guess I wanted to design a game, but really only wanted to know how it was done. Now I know.

  • Explaining the 2015 Internet to 1995 Me

    Dear Erich from 1995,

    I can listen to whatever I want whenever I want. When you’re 20 you’ll get excited about being able to share MP3 files with complete strangers on the Internet, but in 2015 music is streamed over the Internet whenever I want.

    Go find some music to play. I’ll wait. Get the From the Muddy Banks of the Wishkah album and put it in the CD player. Play “Sliver”. It’s track 8. I’ll listen with you. Because I can. I looked that up on Wikipedia.

    Whenever I want, whatever I want. That’s what I need you to understand. Let’s say I want to know what a street corner on a remote island in the Atlantic looks like. I can see it in 5 seconds using Google Street View.

    Google Street View

    This is Erich from 2015. It’s different here, but most of the stuff is the same. For now, lets focus on how the Internet, or more specifically the way we access the Internet and how people are using the Internet has changed.

    You’re still on dial-up and your favorite browser is Netscape. AOL is still popular and information is still hard to find. Well now Netscape doesn’t exist anymore (thanks to AOL) and now we have so much information we have to use software to help us sort it all out.

    Instead of dial-up we have broadband, which I think you heard was coming. Strangely enough I still use the tech you were looking forward to: cable modems. But once it gets in the house or business it’s broadcast over “WiFi”.

    You may be wondering how our desktops are wireless or how I could afford to have a laptop. Well laptops are like $250 now and the phones are the more expensive items to own. They are equally powerful, they just vary in screensize (but they are increasingly equalizing).

    You’d think everyone would be taught and know how to create their own web pages by now, but programmers made it so they never had to learn. For example, I’m typing this in a “Word”-like document and the software adds the code on the back end automatically.

    But the biggest change is the phones. Everyone has a cell phone. Everyone. And all cell phones get online and run “apps” like browsers, but there are MANY apps and many don’t talk to each other. Its kind of like all of the CD-ROM software you have at Wal-Mart now, except they all cost 99 cents.

    Let’s compare our days for a sec:

    1995: You might wake up around 6:30 to catch the bus around 7, arrive at school at 8, go to 7 classes (of course there’s lunch), and then repeat the bus ride on the way home. You might get online in the school library, but if not you’re dialing up at home with Windows 95 on your Gateway 2000 desktop.

    2015: My phone wakes me up around 6, I check my text messages (short messages made of text sent to phone numbers or email addresses) and email on my phone. I might check social networks (I’ll get to that in a second) or check the news. And then I’m basically always online for the entire rest of the day.

    Social Networks and Cell Phones

    The Internet is like a utility now. How much time do you spend thinking about how electricity works? The President just asked the FCC to start treating it as such and now one of the biggest companies in the world (Google) wants to take broadband wireless global with a private space company named SpaceX (more on SpaceX and Google later).

    Nowadays people think “Facebook” is the Internet and they demand access all of the time. By the time you’re a grandpa, it will be added to the Bill of Rights. Facebook is a social network. That’s a place online for people to share things with anyone or very specific people. Almost everyone on the planet is on Facebook.

    By 2009 Facebook had either connected everyone you know or ruined your life. Those who survived went on to trim their friends list to actual friends and their kids moved on to new social networks like Instagram, Tumblr, and direct message systems like Whatsapp, Skype, and Snapchat. But who cares, right? Because phones.

    “Grandma take me home…Wanna be alone.” I love that song. But it’s so true. We are more connected than ever, but we never talk anymore. Why visit an old friend when you’re already caught up to date on Facebook? Why call someone when you could just text?

    When I get a phone call I have to assume someone has died. Unfortunately I’ve gotten 2 phone calls this month. Don’t worry, it was your wife’s family. She actually had the same Nirvana album when you first met her. That’s partly why you liked her. But she never listed to it. Not once.

    But seriously, the phones

    I could be inside a building I’ve never been in my life, do one Google search, and get the layout of the building. I could be stuck in traffic and know exactly what’s happening 1 mile ahead. I can see exactly where my wife is at all times. I can even pay for things with my phone.

    That brings me to SpaceX and Google. When you’re busy going to college, a South African man is coding up a way for people to email each other money while two other college dropouts are making the worlds best search engine. The first guy sells Paypal and creates a private space company to replace NASA and the other two later give him 1 Billion dollars to give the world Internet access.

    1-billion-dollars

    Mike Meyers goes from Wayne’s World to making a hilarious set of “Austin Powers” comedies, but he makes most of his money from voice acting a green ogre for kids. The world does not make sense, but this is the world you find yourself in 20 years later.

    Software is eating the world

    Our daughter is 10 years old and she’s learning to code. You know those guys who were coding instead of chasing girls in college? You know, the ones who made Facebook, Google, and Paypal? You didn’t do that. You didn’t even invest in those companies. Bad Erich. Bad Erich!

    In 2015, money is not earned, it is created by writing software. We have a new type of currency called “making apps.” One requires learning how to develop for Apple (yeah, they don’t suck anymore) and the other for “Android” (Google’s mobile operating system).

    Android is like “Windows” and Apple’s “iOS” operating system is like a Mac. Mac’s still exist, but they are shiny and cool. They are cooler than Nike. I asked my 8 year old what “Nike” was and she had no idea. I asked her what “Apple” was and she said, “A computer and phone store.” Get it?

    Microsoft is still around and still making a boat load of money, but they’re doing it the same way they’ve always done it: by selling Windows and Office. All attempts at making new products have failed (Xbox gaming console, Bing search engine, and the Surface tablet PC).

    The elephant in the room is of course, Amazon. Imagine an online store where you can buy anything and have it delivered to your house next day (sometimes same-day) for free. You know them as a place to buy books. You can still buy those too. I just bought one last week.

    Some advice for you, Stauffer

    Get a job, any job, then put all of the money into buying Apple stock. Work there until the year 2015 and you’ll be a millionaire. Seriously. The stock goes up like 1400%. You could work at McDonald’s for 20 years and be a millionaire.

    Learn to code. Knowing how to write software is like knowing how to type in 1995. Your local library won’t have books on it so you’ll have to go to the university library and get around people in the computer science departments.

    Don’t go to college. There is nothing there for you but heartache and student loan debt. (SEE working for McDonald’s above.) By 2015 if you didn’t invest in Apple, but instead learned to code, you could make 2x your student loan debt a year easy.

    Final words

    Are we better off? The movies are better. I can time travel letters back to you. That’s pretty cool. But I don’t know. I kind of miss having to get home to call someone rather than getting off the phone because I’m home. I kind of miss having to stop at the gas station to buy a paper map to get where I’m going and not exactly knowing how I’ll get there.

    I suppose me telling you all of this kind of proves that point. You’ll never get this letter because you use Juno to check your email and they lost your email when the server crashed. You’ll go to college, get on CollegeClub.com, and get married. Life will happen exactly as it happened. And the world won’t care.

  • How Can I Get Microsoft Office for Free?

    2014-12-04 15_09_58-Microsoft Office Online - Word, Excel, and PowerPoint on the webI get this question a lot. People assume either Microsoft Office comes with their computer or that it’s free. It’s not free, but there are some pretty good options out there that are free or that allow you to pay over time.

    I have a question for you… Do you or we have a disk that I may use to put Microsoft Word/Works on a personal laptop at my home?  We just got our laptop back from a guy that my husband had “fix” it, but he just dumped everything on it & we do not have the discs to re-install Microsoft.  If you or we do, just let me know.

    Microsoft Office isn’t free, but there are a couple of other Office-like solutions for you.

    Web-Based:

    Microsoft Office Online – go to onedrive.com and login with (or create a new) Microsoft account. Once there, you can upload, edit, or create new Microsoft Office files for free.

    Google Drive – similar to Microsoft OneDrive, Google Drive is an online storage and file editing program based in the browser. It can read and create Microsoft Office files for free.

    Download and Install:

    OpenOffice.org – both the name of the website and the name of the program – like Google Drive, OpenOffice.org has it’s own format, but also can create and read Microsoft Office files

    Microsoft Office 365office.com is a subscription service for Microsoft Office that lets you pay for it as you go – it starts at $9.99 a month for up to 5 devices. I use this at home.

  • Normalization, Unions, Joins, and Locking in Microsoft SQL

    What is a normalized database?

    Database normalization is the process of organizing the fields and tables of a relational database to minimize redundancy. Normalization usually involves dividing large tables into smaller (and less redundant) tables and defining relationships between them.

    What is a SQL union/join?

    Unions combine rows. Joins combine columns. UNION combines the results of two or more queries into a single result set that includes all the rows that belong to all queries in the union. By using JOINs, you can retrieve data from two or more tables based on logical relationships between the tables. Joins indicate how SQL should use data from one table to select the rows in another table.The UNION operation is different from using JOINs that combine columns from two tables.

    What is SQL locking?

    Locking prevents simultaneous changes to the data in Microsoft SQL Server. Locks are managed internally by the Microsoft SQL Server Compact Database Engine.

    How to open the Performance Monitor?

    On a Windows computer, click Start, click in the Search box, type perfmon.msc, and then press ENTER. In the navigation tree, expand Monitoring Tools, and then click Performance Monitor.

    What does the Performance Monitor do?

    The “Performance Monitor” under the “Microsoft SQL Server” entry under your Start Menu is the same “Performance Monitor” under the “Administrative Tools” entry under your Start Menu. They are the same programs. What is different is that when you bring up Performance Monitor from under the “Microsoft SQL Server” entry, is that it comes up already running several pre-configured SQL Server performance counters.

    Here are the key counters to watch on a regular basis:

    • Memory — Pages/Sec: To see how much paging my server is doing. This should be close to zero on a dedicated SQL Server. You will see spikes during backups and restores, but this is normal.
    • Network Interface — Bytes Total/sec: To see how much network activity is going on.
    • PhysicalDisk — % Disk Time — _Total: To see how busy all the disk drives are.
    • PhysicalDisk — Current Disk Queue Length — _Total: Also to see how busy the drives are.
    • System — % Total Processor Time: To see how busy all the CPUs are as a whole.
    • System — Processor Queue Length: Also see how busy the CPUs are.
    • SQLServer: General Statistics — User Connections: To see how many connections (and users) are using the server. Keep in mind that one connection does not equal one user. A single user can have more than one connection, and a single connection can have more than one user.
    • SQLServer: Access Methods — Page Splits/sec: Lets me know if page splits are an issue or not. If so, then that means I need either to increase the fill factor of my indexes, or to rebuild the indexes more often.
    • SQLServer: Buffer Manager — Buffer Cache Hit Ratio: To find out if I have enough memory in the server. Keep in mind that this ratio is based on the average of the buffer hit cache ratio since the SQL Server service was last restarted, and is not a reflection of the current buffer cache hit ratio.
    • SQLServer: Memory Manager — Target Server Memory (KB): To see how much memory SQL Server wants. If this is the same as the SQLServer: Memory Manager — Total Server Memory (KB) counter, then I know that SQL Server has all the memory that it wants.
    • SQLServer: Memory Manager — Total Server Memory (KB): To see how much memory SQL Server actual is using. If this is the same as SQLServer: Memory Manager — Target Server Memory (KB), then I know that SQL Server has all the memory that it wants. But if this is smaller, then SQL Server needs more available memory in order to run at its optimum performance.
  • How to Join a Fuze Meeting

    This video explains how to join a Fuze Meeting from the invite to the download to the installation.

  • Creating Custom Views in Microsoft SQL

    In part 3 I continue building on the table structure I learned about in part 2 of my training on How to Use Microsoft SQL by learning about creating custom views.

    Creating the Tables

    Microsoft SQL ViewTo learn how to setup a custom view in Microsoft SQL, we setup a second table so that we could join the data together. If you know Excel, then a good comparison is “Lists”, which are a separate table that can be referenced for a single cell. The second table shares a column name with the first table and it’s used to create a ‘list’ of sorts for the data in the first table.

    Once the second table has been created, we right-clicked on each table and selected “Edit Top 200 Rows” so we could populate it with some data. Microsoft SQL creates little red circles with white exclamation points when you’re entering data. This is meant to show you that the data isn’t saved. Clicking the red exclamation point in the top menu will save the data. ‘Grayed out’ data is read-only.

    Creating the Views

    Right-clicking on the database and choosing, “New View” will bring up a box that prompts you to choose a table (or tables) or click “Close”. Once you’ve selected your table(s), click close to view the View. A view is it’s own object in the database so it can be saved separately and referenced in other SQL code later on. Once a View is created, it can be edited.

    Along the top menu are different views that display the same data in different ways. One box brings up a visual view of the tables where you can draw lines between them. These lines are called “joins” and are simply visual representations of code, which can be viewed in a separate window. Unlike other programs, multiple views can be viewed at once. If you’ve ever used Access, you may be familiar with the screen where you can draw lines between tables. Microsoft SQL works similarly. Like in Access, the bold rows are the primary keys.

    Editing the Views

    Each row can be selected to appear or not appear in the view. This creates a corresponding “SELECT” statement in the SQL code. The “Alias” column adds a ‘nice name’ to the data to help you distinguish it later on. The “Output” column further distinguishes whether or not to display the data. “Sort Type” and “Sort Order” are used to sort the views and “Filter” is used to filter what data is displayed.

    Saving the View

    The View is its own object so it can be saved just like a table. To keep the object straight in your mind when coding, it’s best practice to append the View name with “vw” like this: vw[ViewName].

  • SQL Identity Specification and Data Types

    Continuing the process of learning SQL, last time I wrote about SQL primary keys. Today I learned to disallow “null” from primary keys to prevent having blank data and to set “Identify Specification” and “Not for Replication”.

    Identify Specification

    Setting the primary key’s Identify Specification to “no” means manually having to create the primary key for each row. To change it to yes, set the sub-menu “Is Identity” to “yes”. Doing this also sets the column to “read only”.

    Not for Replication

    One other step you may want to do for primary keys is to change the Not for Replication setting. “No” means ‘replicate’ (i.e. reuse old, deleted values). “Yes” means ‘never reuse old, deleted values’.

    SQL Data Types

    Each row has to have a data type to know how to store the data held in it:

    • int – a number only
    • varchar – a “string” of letters or numbers
    • bit – one digit
      • usually also set “allow nulls” to ‘off’ and set “Default Value or Binding” to a value.
    • decimal – digits and number of digits stored to the right of the decimal
    • date (SQL 2012 only) – date only
    • datetime  – date and time
    • time – only time
    • money – currency and 2 numbers to the right of a decimal

    Standard Column Names

    These are the column names and data types most used by my instructor, but you can do whatever you want:

    • RecordId – int (primary key)
    • CreatedOn – datetime
    • CreatedBy – varchar
    • ModifiedOn – datetime
    • ModifiedBy – varchar
    • IsActive – bit
    • IsDeleted – bit

     

  • Microsoft SQL Primary Keys

    I’m in the process of learning SQL and in so doing have started learning Microsoft SQL using Microsoft’s SQL Management Studio. It’s a free program that’s used to open, manage, and edit Microsoft SQL databases stored on a server running Microsoft SQL (quick note: SQL is a database language used to store data in tables that can be accessed from programs or websites).

    2014-05-16 11_26_21-Connect to ServerWhen you first load the program (I’m running SQL Server 2005, which is not free), if you haven’t already opened a database, it will prompt you to connect to one. If or once connected to a database, it will appear in the left menu.

    The places you’ll be working in the most are under the “Database” folder: Tables, Views, and Programmability > Stored Procedures. For this post I will be focusing on Tables and specifically, creating Primary Keys.

    Table Best Practices

    To create a table, right-click on the Tables folder and select “New Table”. SQL will automatically append a “.dbo” to the front of the table name, but to keep things clear later on, add your own “tbl” or something similar to the beginning of a table name.

    Once you have created a table, create a new column to use as a primary key, then change the type to INT for integer. This will create a way to identify rows that are unique to the table, which allows all sorts of other functions to work correctly later on.

     

  • The Top 5 Best USB Backup Power Sources for Your Mobile Devices

    Having an iPhone, Android smart phone, ebook reader like a Kindle, or other type of mobile devices can make you more efficient, more in tune with your friends and family, and keep you up to date.  But what happens when you are running low on power for your device and you aren’t able to charge it?  USB Batteries are external battery packs and chargers that will power and recharge your devices anywhere without access to an electrical outlet.

    They 4 key things to look for in a mobile device battery pack are:

    • Power – How much power do they store?
    • Size – Will it fit in the space you have for it (in a bag, attached to device, etc)
    • Connections – Will it connect and power your device?  How can you recharge it?
    • Durability – These things will travel with you and need to be durable

    Based on these criteria, here are our top five USB battery chargers for your mobile devices:

    USB Battery5 – First up is the Splash Intense 5400mAh External USB Battery Pack. This small unit weighs in at providing 5400 mAh of power which is going to be several recharges for today’s smartphones.  This unit has two output USB ports to charge two devices at once which is a great feature when you need it.  The battery pack also comes with a wealth of charging tips for many popular phones and includes the standard USB options to power things like Blackberries, Kindles, Nooks, and other e-reader mobile devices.  This unit recharges via your USB port on your computer and lets you know instantly what the current charge is via blue L.E.D.s on the front of the unit.  This is great to be able to know before that upcoming trip if you need to top the battery pack off.  This is easy to use, has a large power capacity, and is a stylish unit to carry around  with the many connection tips that are included making it a great buy.

    xpal USB Battery XP20004 – Next on our list is the Energizer XP2000 Universal Rechargeable Power Pack.  This tiny unit has lots of things going for it.  Weighing it at only 2.4 ounces, this certainly isn’t going to weigh you down.  It packs 2000 mAh of backup power which isn’t a ton but enough to get a full recharge on most devices except for tablet computers like the iPad or iPad2.  This unit is recharged via usb and comes with six cell phone tips including Apple (iPhone, iPad, iPod), LG, Samsung, Balckberry/HTC/Motorola (Mini USB), Micro USB and Nokia.  A very cool program that Energizer is rolling out is the Free Tips for Life program which enables you to instantly qualify for two FREE phone charging tips per year for the life of your product.  This is a great add-on to ensure the USB battery pack is useful for years to come.  The XP2000 also comes pre-charged and holds its charged for up to a full year utilizing Energizer’s great low-discharge battery technology.  This is a great solution to get and put away for occasional or emergency use without having to worry that it has lost it’s charge while sitting unused.

    3 – Coming in at number three is a versatile power charger: the ReVIVE Series Rapid GoCharge 2000mAH External Battery Pack featuring USB Batterytwo USB charging ports, a handy visual battery meter, four (4!) ways to charge including AC, DC – Car Charging, Micro USB, and mini USB.  It even comes with a built-in L.E.D. flashlight!  This is a great unit for those who need an occasional extra boost to their iPhone, iPad, Kindle, or other mobile device and aren’t sure if they are going to be outdoors, in a car, or by a computer when they need it.  The trade off for this type of flexibility and extra options is the amount of power the battery pack stores.  This will provide one good recharge for a phone or e-reader and then pretty much be ready to be recharged itself.  This is great to get topped off or provide an all-in-one emergency solution for backup battery power.  Considering it’s price (under $30), it’s a great solution and is top-rated for light power needs users.

    USB Battery2 – Our runner-up for the best backup power source is the New Trent iCruiser IMP1000 11000mAh External Battery Pack and Charger.  This black piano finished device is not a small unit but packs a huge punch!  This is the heavyweight when it comes to backup power.  The IMP 1000 will get you an extra 50 hours of iPhone 4 charge – that can get you through an entire vacation without needing to recharge!  At 11000 mAh of power, this device can store over 7 times the battery capacity that a typical android smartphone can deliver.  Coming with a handy drawstring bag so you can keep the battery pack and it’s many connection options together is another nice touch.  For travelers who can go quite a while without a reliable power source for their phones, e-readers, or GPS units, this is the way to go!

    1 – Coming in at number one is the superb New Trent iDual-Port External USB Battery New Trent iDual-Port Pack IMP50D 5000mAh External USB Battery Pack and ChargerPack and Charger.  This is a sleek and small (think deck of cards) pack with two usb ports to charge two devices at the same time.  Now charging your phone and your GPS at the same time is easy to do.  This unit has tons of power (5000mAh to be exact and has enough juice to charge an iPhone 4 three times over!  Then, when it’s time to recharge the battery pack, simply plug it in to your USB port on your computer, and it’s ready to go.  This unit is very affordable for the power and features it provides which is why it ranks at #1 on our list here at USB-Battery.net.