For the last week or so, I had been passively looking for a way to play against friends of mine online in NBA Jam for the SNES.  Last night, I resolved that issue with absolutely no lag whatsoever and incredibly smooth gameplay.  Here’s how to do it:

SNES Netplay On Windows

  1. First you’ll need to grab a few files:
    RetroArch and the LibRetro cores
    Phoenix launcher for RetroArch (not necessarily needed, but makes things way easier)
  2. Once downloaded, unpack all of the files.  Typically, you’ll want to toss the contents all in the same folder for easier access.
  3. Launch the Phoenix loader.
  4. Once the Phoenix loader is loaded up, You’ll need to make a few adjustments.  First up is the RetroArch path option.  Set that retroarch.exe which was located inside the RetroArch zip file you extracted.
  5. For SNES games, set the libretro core path to snes9x_next_libretro.dll that was inside the cores zip file.  RetroArch supports a ton of different emulators, although not all support NetPlay.
  6. Player 1 will need to start the server.  To do so, check the Netplay checkbox and set the radio button to Server on player 1’s machine.  Player 2 will also enable the Netplay option, but select Client.
  7. The client now needs to set the Host IP field.  Here, enter the IP of payer 1’s server.
  8. For smooth play, set the Delay Frames option.  This will vary based on your bandwidth, but we have had the best luck with this set to 4.  Your mileage may vary.  For slower internet connections, you may want to set it a bit higher.
  9. Next up, be sure that port 55435 is open and forwarded on your router.  If you’re not sure how to forward ports, check out portforward.com.
  10. Next up, you need to select the SNES ROM that you want to play.  Both players should have the exact same ROM if possible for smoothest play.  Different copies of the same game will sometimes work, but I can’t guarantee anything with that.  In the Normal ROM Path field, browse to your ROM file on both the client and server machines.
  11. You’re all ready to go (with the exception of your controls which can be configured using Settings>Input.  On the server computer (Player 1), click the Start RetroArch button.  Once the server is launched, do the same on the client (Player 2).  You should now be playing together!

SNES NetPlay on Mac

Mac requires a bit more as there is not a launcher like Phoenix for Mac, but can be done easily through the command line.  Here’s how to do it:

  1. Download RetroArch and the LibRetro cores for Mac.
  2. Be sure that port 55435 is open and forwarded on both players’ routers.  If you’re not sure how to do so, check out portforward.com for instructions.
  3. Unpack the RetroArch zip and place RetroArch.app into your Applications folder.  Unpack the Cores zip wherever you can easily access it.
  4. Next, launch the terminal.
  5. You will need to launch everything from a command line.  The server will use a command like the following.  For the client, go to step 5.
    RetroArch -L /path/to/libretro/snes9x_next/core -H -F 4 /path/to/your/rom/fileSimply put, this command is launching RetroArch with the snes9x_next core, launching the server with the -H flag, setting the frame delay to 4 using the -F flag, then setting the SNES ROM that should be loaded.
  6. On the client computer (player 2) use a command like the following:
    RetroArch -L /path/to/libretro/snes9x_next/core -C 123.123.123.123 -F 4 /path/to/your/rom/file
    As you can see here, it is very similar to launching the server, but instead you are replacing -H with -C and inserting the IP address of the server you are connecting to.
  7. You should now be all set and ready to play together!

Have a blast!  Things are much easier with a controller as well so if you need one, check out Amazon for a USB SNES controller.

to-infinity-and-beyond

As many of you may already know, my time at InMotion Hosting is ending today to pursue a career at RocketGenius.

The decision to do so certainly wasn’t easy.  Any of you who know me, know that I am an extremely loyal person and do not waver in my convictions.  In a discussion with Jeff Chandler about the transition to RocketGenius, he reminded me that I had previously stated that it would take a lot to get me to leave InMotion.  My response was simply that my goals are far surpassed with RocketGenius and I just need to take a leap of faith.

In my time at InMotion, I have learned a lot.  My experiences here have far surpassed my expectations and have skyrocketed my career.  Without InMotion, I likely wouldn’t be as active in the WordPress community, or even at all.  When I started at InMotion, my skillset was quite basic.  A little Linux, a dash hosting, some development, and a hint of marketing.  I had no idea that I would be travelling, developing plugins, and expressing my passion for WordPress.  InMotion has certainly provided me with those opportunities and I am grateful for each and every one of them.

The decision to join the team at RocketGenius was simply for personal growth.  By joining the incredibly talented minds behind GravityForms, I am able to witness product development at its finest.  While there are excellent developers at InMotion, WordPress-focused development is quite lacking.  In that sense, I was the top of the ladder; the cream of the crop.  If you’ve taken a look at my code in the past, I’m far from a senior developer.  I can get things done, but I lack the polish that comes from experience.  Simply put, I am a sponge that needs to soak up knowledge, and RocketGenius is the fire hose that will give it to me.

I look forward to joining the RocketGenius team next week.  Never before have I been so excited for a Monday.  A big thanks goes out to InMotion Hosting, the other folks who have helped me get here (I’m looking at you, Jeffro), and the RocketGenius team for giving me a chance.  Together, we can change the world.

Working for a major web host, I’ve seen a lot.  So much, in fact, that my entire perception on hosting has changed in the last 2 years that I have been at InMotion Hosting.  Many people simply see hosting a basic container for their content when behind the scenes, there’s a whole lot more going on.  With that, I feel that need that an honest, insider look on hosting as a whole is needed to clear up the fog.

Hosting isn’t just a few files on a server

In the time that I have been working at InMotion Hosting, I have spoken to tens of thousands of customers.  Of those customers, many seem to just simply think that a server is tossed up, and and operations begin.  In reality, there is a significant amount of work put in before any accounts hit the server, while they are there, and even some even after they are gone.

Prior to deployment

Before deployment of the server, it needs to be fully evaluated for performance and stability.  Without a full evaluation, a host could never know how reliable the server actually is.  Can the server support 10 users?  100?  1,000?  In this, every step of the puzzle is completely evaluated.  This includes both hardware and software and has an enormous amount of environmental variables to ensure that each and every customer has a positive experience.

On the live server

Imagine having a boss that tells you there’s someone you need to talk to in the office, but you have no clue who they are or what you need to talk to them about.  Then, you take 2 steps and someone else tells you there is yet another person you have to talk to.  By the time you get to the initial person, there are 5 others waiting.  Allow this to continue 24/7/365.  That’s what handling the uptime and stability of a web host is like, and that’s just one aspect of the situation.

Then comes security.  A host’s responsibility is also ensuring the safety of its users’ data.  Without it, any attacker could just waltz into the server and start destroying things.  If you’re not familiar with the aspects of security, there is an incredible amount of exploits that are found on a daily basis, many that directly affect any web host.  The host then has to keep an eagle eye on all possible security issues and ensure that they are not vulnerable.  This not only includes their hardware and software, but customer’s currently running software as well which cannot be as easily controlled.  Believe it or not, many customers leave their content wide open to security concerns and many are only saved because their host made changes on the server level to ensure that they are no longer vulnerable.

Lastly, you have the customer themselves.  This can range from an extremely polite, educated developer that just needs a simple change made or has a question about a server configuration, to the raging customer who doesn’t understand how to copy/paste and doesn’t understand why their email doesn’t work.  (Yes, that is actually a real-life example).  Regardless of the customer, support representatives are required to be the go-to for any questions a customer may have, or at least know where to direct you to for the answer.  They can take a severe beating by a customer and need to get up off the floor from that call, and pick up the next one as if they were having the best day of their life.

End of life

When a server is being upgraded, there are also several additional variables that exist to ensure everything is running smoothly.  This mostly consists of ensuring the happiness of all customers currently on that server that are being moved.  In this, every customer needs to be checked over thoroughly to ensure that they will not have any issues on the new server and includes things such as checking over every bit of software for compatibility with their site.

Your host cares about your website; maybe even more than you do

Many people think that their host couldn’t care less if their site is up or down.  That couldn’t be farther from the truth.

When someone’s website goes down, they call up their host and the host can sometimes either resolve it right away, or may take a couple of minutes to fix the issue.  The customer then curses the host and waits for their site to come back up.  Here’s what happens on the host’s side of things:

The most common issue would be shared servers with load spike issues.  Someone on the server did something to cause a large amount of resource usage, and the sysadmins are now tracking the issue to determine the appropriate action to take.  On a shared server, that means tracing activity through 100s or maybe even 1,000s of websites, locating the issue, and being able to determine the best course of action almost immediately.

While your sysadmins are calming down the server, support representatives have to be notified and readied to the amount of traffic they are about to receive.  Almost instantly, support calls, chats, and tickets will significantly jump and all need to be handled.  The absolute best case scenario is that you are able to tell the customer the issue, they are understanding, and they are quickly on to the customer with the next issue.  Sometimes, the result can be the customer calling in while yelling, threatening legal action, and not allowing you to get off the phone for a significant amount of time to try to help the next customer, and possibly canceling their account.

With all of the work involved with any amount of downtime, the host puts in a significant amount of man hours with just a single server and a couple of minutes of downtime.  Your host certainly does care about your website and sometimes, more than you do.

You use your tools by choice, we use your tools because you do

As you may know, there’s no shortage of tools to build a website.  You may spend time investigating some that interest you, and learn to master them, but hosts have to know what tools you use, before you do.

Software is released and changed every day and web hosts have to be able to know how it operates.  Nearly every piece of software in existence needs to be investigated to ensure stability and compatibility.  For example, if WordPress were to suddenly decide to switch over to Node.js, the hosting provider would need to know about that change far ahead of when any customers find out.  The host would then need to make sure that every server is properly equipped to handle the new changes.

This even goes as far back as Microsoft FrontPage.  Microsoft stopped supporting it many years ago, but hosts still have customers running it.  At that point, change after change has to be custom written to ensure that all customers running FrontPage are still able to publish their content and use FrontPage Extensions for as long as possible.

Conclusion

Hosts care a lot about what they do.  If they make one misstep, they are called out on it like they murdered your first-born.  Hosts are not just in the business of making money, but taking the responsibility of hosting the internet world on their shoulders.  Are there bad hosts out there?  Definitely.  Do the majority of web hosts care way more about your website and that you are happy than their bottom line?  Without a doubt.

Coming soon!

Soon, I will be taking an insider and unbiased look at some major hosting providers, and pitting them against each other.  We’ll see how they stack up.

backup-153008_640

Picture yourself as the unfortunate user who woke up in the morning to check their traffic to their website, and saw absolutely nothing.  How did your traffic go from hundreds of visitors a day to absolutely nothing?  Surely everybody didn’t just forget about you.

In your morning daze, before your first cup of coffee, you take a look at your website to make sure that there is nothing wrong.  Little did you know that while you were in your late night slumber, an attacker was quite diligently  hacking your website due to an unpublished vulnerability in your website software.

Quite distraught, you look at the damage.  Not only do all pages show a message that your website was hacked, but all of your critical files and database are now completely missing.  What do you do now?  Is your entire livelihood now gone in one fell swoop?

If you were making regular backups, it’s merely a bump in the road.  You may only have data from last night or even last week, but you at least have something to get back into the fight.

Never Trust That Someone Else Is Doing It For You

Just as you wouldn’t take a salesman’s word when buying a car without verifying the facts, never fully trust your backups to another individual.

This isn’t to say that subscribing to a third party backup service is a bad idea, or that you shouldn’t choose a host that runs backups for you, but always run your own backups as well.  This way, you know exactly what the backups contain and they are safe in your own hands.

Backup In Increments

Incremental backups are essential.  What if something goes wrong on your site and you don’t notice it until several weeks later when you have already overwritten your backups?

Keeping multiple backups of your site throughout different time frames will help you avoid any issues that go unnoticed over time.  I highly recommend keeping daily, weekly, and monthly backups on hand, depending on how often you make changes.

Never Keep Your Backups In A Single Location

Just as something can go wrong with your website, your backups could disappear as well.  We all know that technology can fail and that hard drive that your backups are stored in can do exactly that at any moment.

With the constantly falling price of removable media, flash drives are your best option.  Flash drives rarely fail and can be easily locked up in a secure location.  Think of this as a backup of your backup.  Every time you download a backup of your website to your computer, copy it over to the flash drive as well.

So How Do I Backup My Website?

cPanel Users

Backup Your Website Files in cPanel

Backup Your Database in cPanel

WordPress Users

BackupBuddy

VaultPress

Joomla Users

Akeeba Backup

Drupal Users

Backup and Migrate

 

 

It seems that there’s not much out there on automatically mounting a network shared drive on Linux Mint.  While these instructions specific Mint, it should work on various other Linux distributions such as Ubuntu as well.

Create your mount point

First, you need to create your mount point.  Personally, I usually use something in my home directory, but feel free to use whatever you want.  I’m going to assume that you know how to create directories in Linux already.

Edit fstab

Next, you just need to edit your fstab.  To so do, enter this in the terminal:

sudo nano /etc/fstab

Now that your fstab is up, add the following line:

//192.168.1.1/Media /home/user/networkdrive cifs guest,uid=1000,iocharset=utf8  0  0

In this line, I am connecting to a drive attached to a share named Media my Linksys router.  I allow all users that are within my network to connect to it, so I have mounted it with guest access.

Mount all drives

Now that everything is all set in your fstab, you just need to mount all drives.  To so do, enter this in your terminal:

sudo mount -a

As your network drive is now set to automatically mount, this command will mount this drive, as well as anything else that is configured to automatically mount.

You’re all set!  Enjoy mounting your network drives.

As the price just keeps dropping, a lot of people who have been curious of cryptocurrencies have been picking up The Fury by GAW Miners.  For a beginner, it may seem a bit hard to figure out at first.  Here’s your setup instructions.

Windows Configuration

Windows is fairly simple to work with but the drivers are a bit of a pain.  Othside of that, you’re ready to rock and roll.

Driver Installation

First, install the Windows drivers.  To locate the Windows drivers, navigate to this page.

Once the driver is installed and your devices are detected on COM ports, you’re ready to rock and roll.

Mining Software

Personally, I prefer BFGminer and have had my best luck in terms of stability and hashrates with it.  Thankfully, there is a modified version of BFGminer that supports the GAW Fury.  You can download the precompiled windows binaries for this edition of BFGminer here.

If you want more information on the moedified version of BFGminer, take a look at the litecointalk.org thread.

Create Your Startup Script

Now that you have downloaded and unpacked BFGminer, you just need to make a startup script that will allow you to start mining with a single click.  Open Notepad or your text editor of choice and enter the following:

bfgminer.exe –scrypt -o stratum+tcp://mine.btcd.xpool.ca:3600 -u RG3KZ4r8VH8pSKi9UHZ4rDSFK2aeMqw7gW -p WORKER.PASSWORD –zeus-cc 6 –zeus-clk 340 -S zeus:\\.\COM4 -S zeus:\\.\COM5

As you can see from the above commands, we are connecting to  the minign pool, sending a user and password, then defining parameters for the miners themselves.

To get started, you will need to change your mining pool and COM ports that are defined.  Once that’s all done, save it inside your folder that contains BFGminer and name it something like start.bat.  NOTE: Be sure to save it as a .bat file.

Start Mining!

Once your script is created, just double-check on it to get it running.  If configured correctly, you should see it start mining away.

Linux Configuration

For Linux, you will not need to configure any drivers.  In this section, we’ll just go over grabbing BFGminer, and starting it up.

Mining Software

BFGminer is my mining software of choice.  Thankfully, there is a modified version of BFGminer that supports both the GAW Furty as well as Linux.

Ubuntu users:

Ubuntu binaries exist for a simple installation (which may work on Debian as well, although I have not tested it).  For Ubuntu users, you may pick up the precompiled Debian binaries here.

Building from source:

Building from source is pretty simple.  In your terminal, run the following:

git clone https://github.com/Darkwinde/bfgminer.git

cd bfgminer

./autogen.sh

chmod +x ./configure

./configure CFLAGS=”-O3″ –enable-scrypt

make

Once that completes, BFGminer should be ready to run.

Create Your Startup Script

If you’re on Linux, you should know at least some about a text editor.  Fire up your text editor and enter int he following:

bfgminer –scrypt -o stratum+tcp://mine.btcd.xpool.ca:3600 -u RG3KZ4r8VH8pSKi9UHZ4rDSFK2aeMqw7gW -p WORKER.PASSWORD –zeus-cc 6 –set zeus@/dev/ttyUSB0:clock=320 -S zeus:/dev/ttyUSB0 –set zeus@/dev/ttyUSB1:clock=320 -S zeus:/dev/ttyUSB1

Within this, simply change your server, user, and password as well as the ttyUSB ports.  To locate the ports, you may run the dmesg command within your terminal immediately after plugging in the miner.

Simply save this script as anything you like within the BFGminer folder and make it executable.  Then all you need to do is run it within your terminal windows and you’re off to mining!

 

 

 

People don’t want to be sold things

When approached by a salesman, do you automatically lock up and are put on guard?  Do you immediately become defensive and wonder how someone is going to take advantage of you?  You probably answered yes to those and you would have good reason to doing so.

When making relationships, I see far too many people who are trying to quickly get in, close the sale, and leave the relationship at that.  Often, because of the previously mentioned scenario, things usually don’t working that way, especially in the WordPress community.  What reason does that person have to trust you?

Make friendships, not partnerships

A mutual friendship will always be more powerful than a business relationship that has no other weight outside of monetary value.  In my experiences with the WordPress community, salesmen are shut down extremely fast.  You’re certainly not the first person who wants the publicity of whomever you are reaching out to, and will not be the last.  So how do you break that barrier?  You become friends first and any business relationships that come from it is just an added bonus.  The WordPress community is first and foremost a community, not a revenue stream.

Sponsor to help, not to cash in

Sponsorships in the WordPress community should be made with the intention of assisting with event or product.  When you lose sight of the big picture of open source software, you have already lost the fight.  The purpose that WordPress was founded upon is to produce a stellar product and ask for absolutely nothing in return.  As a company that makes money from WordPress, you should also keep that mentality and continue to contribute to the success of entire ecosystem.  As you reach more financial success, pass it along because without the community, you have nothing.

Dive in and help where you can

Whether you can help financially, or volunteer at a local WordCamp, you have the power to help the WordPress community.  Getting involved and making connections will get you much further than mindlessly throwing money around in every aspect of the WordPress community.  Regardless of how big you get, never lose sight of where you started and the CMS that got you there

 

Today, Forbes was hacked by the Syrian Electronic Army group.  Various posts were redirected to the Syrian Electronic Army official Twitter account in which they have also stated there and provided screenshots of the interior of the WordPress dashboard.

According to their Twitter, they have dumped all user information including any passwords that were stored on the Forbes site.

At this time, there is still no word on the methods that they used to get it, but it looks like Forbes may need to beef up security a bit.  If you look at the screenshot, it also looks like they may be running an outdated version of WordPress as the UI has changed in WordPress 3.8.

This is bad news for Forbes, and even worse news for anyone with a Forbes.com account.

Do you have any thoughts on this?  Let me know in the comments.

Most of you have noticed (unless you are using Hootsuite or are on mobile) that Twitter has just rolled out new UI changes.  I’m sure people will complain about it as they do everything else that is new to them, but I absolutely love it.  From what I have noticed so far, it seems to be mostly just a color change without any changes to layout.  Nonetheless, it’s pretty sexy.

Some of you may have heard of AppPresser while some of you may not.  If not, you’re really missing out on a true gem.

AppPresser allows all of us WordPress users to easily deploy native Android and iOS apps with amazing simplicity.  If you’re like me and cringe at the thought of learning Objective-C, this is great news.  With AppPresser, WordPress knowledge can be directly translated to mobile app development with a very minimal learning curve.

Why is AppPresser such a huge leap forward for WordPress?  Well, this pushes WordPress further along to becoming a true application development environment.  With the creation of AppPresser, and as it takes more and more market share from traditional mobile application development methods, WordPress can gain further usage across platforms.

Not only is this a first for mobile application development using WordPress, but they execute it flawlessly.  There’s not a ridiculous amount of setup, and existing libraries from PhoneGap can be used to rapidly develop your application easily.

Made by some incredible WordPress developers, for WordPress developers, I believe AppPresser will further improve rapidly to make it one of the best WordPress tools of the year, if not the decade.