Showing posts with label ISMN. Show all posts
Showing posts with label ISMN. Show all posts

Sunday, February 13, 2011

Taking your questions and Port Forwarding!

Hey All,


First thing - I have a domain name now! It is www.paulwelch.info for easier access! It should be activated in just a few hours.


Also, I have been having a good bit of questions in e-mails sent to me regarding my thoughts on certain subjects, questions, etc. I will gladly answer your questions, and even set up an email for this purpose : paulwelchonit@yahoo.com . If the question is good, I will answer it and post it up here for all:


Heres the first one :


Hey Paul,


My names Rick, Im a student at Penn State majoring in ISMN and I had a quick question for you. First off, I love your blog - for a class project we had to work with RapidMiner and your guide helped a ton.
My question is : I am trying to figure out how to manually forward ports on my home network to enable a few things, most specifically XBOX live. Can you tell me how to do so? If I can, I think my XBOX live would quit lagging so much.

Thanks man! Keep up the good work!

- Rick M.

Hey Rick,

Thanks for reading! Im glad the RapidMiner guide helped you. Port Forwarding can be tricky but luckily for you, I know exactly how to. There is software out there that can do it manually for you, but this usually runs between 20-40 bucks, but with a little time and know how you can do it easy! Because I am not sure of the router you are using, I cant give you the exact directions, but its pretty much the same thing every time, albeit a little variation, but once you get the grasp you can figure it out easy. In this guide, I will be using the instructions for a Linksys router and for XBOX live.


1) Make sure you are connected to your network.

2) Go to your web browser, and type in 192.168.0.1 or 192.168.1.1 in the address bar.
This should bring up a authentication screen where it asks for a user name and password. If neither of those IPS work, go to your command prompt (cmd.exe) and type "ipconfig /all" (without quotes). Look for your wireless connection (should be listed first) and write down the address listed for "Gateway." Then enter that in the browser


3) For linksys, the default username is blank and the password is "admin." For other routers, the username and password are similar to linksys - Netgear, for example is "admin" as username and "password" as the password. Just google your routers make and model and you should be able to find it.

4) After this, click on the "Security" Tab on the top of the page, and remove the checkmark from "Block Anonymous Internet Requests." Hit save settings.

5) Hit "Applications and Gaming" tab, and then the port range forward subtab.  Xbox Live 360 requires you to forward the following ports: 53,80,88,1863,3074

Fill out the forms like this :


For IP address, put in the gateway or your static IP once again. Do it for all the numbers, make sure it is enabled and then hit save. Then you are done!

I hope this helps - if you need to forward any more applications or want to read more, check out http://portforward.com/


One last thing - got a twitter? Follow me!http://twitter.com/#!/paulwelchonit

Hope everyone has a great week! 

Thursday, February 10, 2011

RapidMiner question and Correction

Earlier, I posted a how-to guide for RapidMiner, the leading open-source data mining and analysis tool. I received a question for a reader regarding the optimization process, and it seems I did leave an important detail out. Here is the process : 

Speeding Rapid Miner up:


1) Close all process you DONT need with task manager. Use common sense with this. Keep core processes and programs running but end everything unnecessary. (Example: Close things like limewire.exe or itunes.exe, but keep things like windows.exe and rapid-i.exe open!)


2) Find out how much RAM your system has. You can accomplish this by right clicking "My Computer" and clicking properties.


3) Go into your C: drive and then the program files folder. After that, find Rapid-I folder and open it up.  For windows, open up the rapidminerGUI file Right click the file, and hit edit. It will bring up a script in notepad.


4) Go down to where you see the line about JAVA MEMORY Max. Change it to something compatible for the amount of RAM your system has (remember to leave 1.5 - 2gb of ram for your OS.) For example, if you have a 2gb laptop, changing the amount to 1024 should be fine, although not preferable. It is a very powerful program and needs adequate resources to run.


This should get your RapidMiner working at full power.


What I failed to mention is that once you edit the code, in the RapideMinerGUI, and you save it, you need to run RapidMiner by just double-clicking the same file you just edited. (rapidminerGUI)


Then you are done! Hope this helps!


Also, below is a video tutorial which shows how to use RapidMiner for data modeling. Enjoy!


Wednesday, February 9, 2011

Java Programming - There are only 10 kinds of people in this world: those who know binary and those who don’t.

While I am sitting at home working on some Java Applets for my advanced programming class, I got to wondering how useful this language will be in the real world. I know it is used widely for creating basic standalone applications and internet applets, but some fellow MIS majors stress that it is one of the lesser used languages in the programming world - however that once you learn a language such as java that it becomes MUCH easier to learn other languages. I have heard that C++ is very versatile and not too bad to learn. Assembly seems to be the toughest, and I just began looking into languages such as Python and Ruby on Rails.

EncyclopediaDramatica, a satirical wiki that documents internet culture (and pretty much makes fun of everything) defines Java as
Java is an interpreted language which is unique in that it includes a pretend compiler so that Java programmers can feel like they're using a grownup programming language. It is object oriented and has automatic garbage collection to make it as easy as possible to allocate memory.
Java is like Alzheimers; it starts slow and eventually, it takes away all of your memory. Something Java fans like to talk about is the JIT compiler which eventually does turn Java into native code but only after it's been interpreted 10,000 times. By that time the program has probably already crashed with an out of memory error. Programming in Java drives most hackers permanently insane. 

One thing I have realized is how much work one can put into Java, and how confusing it must look to the untrained eye. For example, I built a program below that makes a multiplication table up to the number that the user inputs:
import javax.swing.*;
public class pw {


public static void main(String[] args) {
String matrixSize = JOptionPane.showInputDialog("Welcome to the Paul Welch multiplication table. What number would you like to multiply through?");
int userMatrixSize = Integer.parseInt(matrixSize);  
int column;


System.out.println("Multiplication Table through " +  userMatrixSize);

for (row=1; row<=userMatrixSize; row++)    {                             
for (column=1;column<=userMatrixSize; column++) {
System.out.print(" " + row*column + " ");
System.out.println(" "); 
}
System.out.println( " Thank you for using the Paul Welch Multiplcation Table " );

This is a program I built to build an employee payroll and report system. It took a great while, a lot of code memorization, patience, and correct syntax. It gathers the employees information, calculates taxes, and provides a monthly/yearly report.


public class pwEmployeePayroll
{
public static void main(String args[])
{ // declare vars
String hrWage;
String hoursWeek;
String dedPer;
String howManyYear;
String employeeName;
double hourlyWage=0.00;
double hoursPerWeek=0.00;
double deductionPaycheck=0.00;
double lessThanTwenty = .10;
double betTwenThir= .15;
double greatThir= .19;
double totalPaid=0.00;
double totalPaidPreTax=0.00;
double totalTaxesPaid = 0.00;
double paycheckAmount=0.00;
String monReport;
int monthsReport = 0;
double x = 20.00;
double y = 30.00;
String howManyMonths;
// intro
System.out.println("Welcome to the Paul Welch Tax Calculator." );
System.out.println(" This program will gather information from you and calculate relevant items, such as taxes.");
System.out.println("Lets gather some information about the employee on which you seek information!");
System.out.println(" Note : please enter all numbers in a whole number form, i.e. 30.00"); 
// get user info
employeeName= JOptionPane.showInputDialog( " What is the employees name?");
hoursWeek=JOptionPane.showInputDialog(" How many hours does the employee work a week ");
hoursPerWeek = Double.parseDouble(hoursWeek);
while ( hoursPerWeek <=0 )
{
System.out.println(" Invalid Entry. Try again");
hoursPerWeek = Double.parseDouble(JOptionPane.showInputDialog( " What is the employees hours per week?"));
} // Validate entry
hrWage=JOptionPane.showInputDialog( " What is the employees hourly wage");
hourlyWage= Double.parseDouble(hrWage); 
while (hourlyWage <=0)
{
System.out.println("Invalid Entry. Please enter again");
hourlyWage = Double.parseDouble(JOptionPane.showInputDialog(" What is the employees hourly wage"));
} // Validate entry
totalPaidPreTax = hoursPerWeek * hourlyWage;
//Calculations : figure out total taxes paid and what not
if (hourlyWage < x || hourlyWage != 0)
{
totalTaxesPaid = (totalPaidPreTax * lessThanTwenty);
}
 
if (hourlyWage >= x && hourlyWage <= y)
{
totalTaxesPaid = (totalPaidPreTax * betTwenThir);
}
 if (hourlyWage > y)
{
 totalTaxesPaid = (totalPaidPreTax * greatThir);
}
paycheckAmount = (totalPaidPreTax - totalTaxesPaid); System.out.println(" Per month, the employee's information is as follows:");
System.out.println("Employee Name   "    +    employeeName);
System.out.println("Paycheck amount   "   +     paycheckAmount);
System.out.println("Total taxes paid   "    +    totalTaxesPaid);
System.out.println( "Total paid pre-tax     "   +  totalPaidPreTax );
// Basic information is set and stored, now onto calculating over time periods
monReport =JOptionPane.showInputDialog( "Would you like to calculate that with additional months? Please enter Y or N");
while ((monReport.compareTo("Y") !=0) && (monReport.compareTo("N") !=0))
{
System.out.println("Invalid Response. Please enter Y or N");
}  // Validate entry

while(monReport.equals("Y"))
{
howManyMonths = JOptionPane.showInputDialog("How many months would you like to calculate");// Input, then calculate
monthsReport = Integer.parseInt(howManyMonths);
paycheckAmount = paycheckAmount * monthsReport;
totalPaidPreTax = totalPaidPreTax * monthsReport;
totalTaxesPaid = totalTaxesPaid * monthsReport;
System.out.println( "For that amount of months, the employee's pay and taxes is as follows");
System.out.println("Employee Name   " + employeeName);
System.out.println("Paycheck amount   " + paycheckAmount);
System.out.println("Total taxes paid   " + totalTaxesPaid);
System.out.println( "Total paid pre-tax   "  + totalPaidPreTax);
String yearlyReport=JOptionPane.showInputDialog("Would you like a yearly report on this employee? Enter Y for yes or N for no");
while(yearlyReport.equals("Y"))
  {
    howManyYear= JOptionPane.showInputDialog(" How many years would you like to calculate?");
int howManyYears = Integer.parseInt(howManyYear);
 
System.out.println("Yearly report is as follows:");
 paycheckAmount = paycheckAmount * howManyYears;
totalPaidPreTax = totalPaidPreTax * howManyYears;
totalTaxesPaid = totalTaxesPaid * howManyYears;
System.out.println("Employee Name    " + employeeName);
System.out.println("Paycheck amount    " + paycheckAmount);
System.out.println("Total taxes paid   " + totalTaxesPaid);
System.out.println( "Total paid pre-tax   "  + totalPaidPreTax);
while((yearlyReport.compareTo("Y") !=0) && (yearlyReport.compareTo("N") !=0))
 System.out.println("Invalid Response. Please enter Y or N");
yearlyReport =JOptionPane.showInputDialog(" Would you like another yearly report on this employee? Enter Y for yes or N to quit the program");
 }

I suppose it makes me appreciate that most code for basic functions are stored in an API and what not, and I also appreciate the programmers who spent tedious hours writing it.

What do y'all think about Java and other languages? Feel free to comment