Diary of a computer engineer trying to start a software business. Dilemma between idealistic self and realistic world... how is he going to survive?

Friday, March 11, 2005

Tygersoft Now Part-Time

my love for startup, to have freedom to do what I love to do, to be able to stand up on my own... I cannot deny and have to face the cruel reality.

All my life, I am a self-claimed small time inventor. I enjoy develop products from scratch. I love to convert/apply engineering ideas/methodology into fields that were not intended initially. I especially enjoy building application with limited resource (currently newest technologies, or extended functionalities). In that case, experience in technology is not as important as exposure to vast general information. For me, this kind of engineering is ART!

But the force of reality tends to favour stability. Experience and education does its magic in convincing others. Even though I have great education now, I am still far from being experienced. The work I want to do depends on creativities rather than experience. But this road is cold and harsh. I will get back to it. Just the timing is not correct.

I have acquired myself a software egnineering position at a small US firm. Although I work in Taiwan, I still manage to acquire fairly decent deal.

I will still continue to work with TygerSoft. However, this would no longer be my sole job. I do think of it as my primary career. I will keep my focus around. Never let the creativities disspate! Innovative-Never-Die!

Month Summary

Since the AutoSeek Project, I've been on several projects.

The major project is the auction system. In it, I have reverse engineered an incompleted research project. I have done several major modifications and dissolved several bugs. I have learnt how to interact with MSSQL. Most importantly, I have regained my confidence in programming.

Secondly, I've done the same with several ASP.Net startkit projects. In fact, I've quite happy to see different solution, different implementation, different point of view to solve similar problems, mainly towards web application developments. Seeing security in implementation is surely an interesting experience.

Lastly, I've reviewed UML and Design patterns. It reminded me my passion and dedication towards software engineering.

Monday, February 14, 2005

Project AutoSeek

An On-Demand Application.

During the development, I ran into several problems. With appropriate software engineering practices, I was able to dissolve all of the problems. Through prototyping, I am now able to develop similar application within fair amount of time-- a real RAD. Another technique used was decomposition. I've divide the system into the following: SQL construction, html server page (with aspx and scripts to generate real-time effect), back-end server (to generate appropriate response for interface to consume), IIS administration.

Couple notes:
for SQL:
-remember to set primary key
for html server page:
-this and back-end are 2 different pages.
-remember to change localhost to correct ip
Back-end server:
-include namespace
-remove unnecessary pre-generated data (html settings)
-learn to work with SqlConnection/SqlDataAdapter
IIS administration:
-permission must be set correctly (script on)

Tuesday, January 25, 2005

Server up and Running

As some people might know, I have problem with my server recently.
The days in Compal separated by server hosting life. I haven't touched my servers for a year or so. Suddenly, when I want to come back to server/ web industry, I realized that I cannot get my server working. Well, it works on local computer. it's just it is unreachable by others. with THAT in mind, the most direct prediction of where the problem is/should be, lies in firewall/security settings. However, what troubles me is that, I tried to run the server with ALL firewall turned off. It still fails. With that in mind, I've been installing/uninstalling/reinstalling software and services to try to find out what the problem is. I even tried with both IIS and apache (which I relies on it so very often). Still nothing!

Couple days ago, I set up a small network locally (with wirless router, see previous article). Suddenly, it hits me. If I can duplicate the systems by installing services once by one, I'd probably come up with something. I am out of most of my options, doesn't really hurt if I learn more about windows services. Couple services down... "BlackICE service started." What!!?? I turned the firewall off!!! why is this service running? Then I realized that it was installed by default to run in background, and the ISS PC Protection is just a control apps. The rest of the story is pretty much click and go.

The solution, service so called "BlackIce firewall" blocks all my other traffics. and that caused my system to be unreachable by other systems. Talk about over protected system without reading the manual completely (or read without understanding + certain tireness and lazyness + maybe some excuses).

Anyways, after long time, our servers are up and running.

Friday, January 21, 2005

Setting up Wireless Router

TygerSoft gets a system upgrade!
Actually, I got a new toy (ironically, I had this for a year and didn't bother to install it). It was a gift from signing up local DSL ISP (My previous ISP).
Cutting the misc stories short, let's go straight to the meat.

Let's discuss the tools first, what I had before, what I want to accomplish, what do I need to accomplish, and how do I do that.

What I had:
1 Desktop server with 1 LAN card
1 Laptop (modem, wireless lan, lan)
1 DSL modem
1 straight (there are no gay lines- Quoting from my grade 12 Math teacher Mr. Wei) RJ45

What I want to accomplish:
Get both boxes efficient internet access, security, and flexability to perform any possible tasks that TygerSoft requires with respect to the cost factor.

What I need:
I have a wireless router
1 Straight RJ-45

How to set it up is a bit tricky.
First of all, the physical setup (see image):



I will explain physical network setup in greater detail in another article (Will add link to that as soon it is finished).

Once all the physical setup are in place, here comes the tricky part (the part I actually checked manual for it). First, connect to the wireless router (it also has 4 RJ45 ports) by typing it's virtual ip. IP address with 192.168.x.x are usually for local setup purposes like this example.

Once connected, set up the username and password (always do this first before anything else for security reasons). Usually, we should try to get local security settings setup correctly before trying to connect to WAN. This way can reduce lots of unwanted intrusion attempts.

Connection Type setup:
After the initial setups, head to the connection type settings. Since I have a PPPoE (PPP over Ethernet), I would require my username and password. I've chose continues, this way, I don't have to manually dial each time I access internet.

Wireless AP Setup:
Alias, Channel, Essid are the basics for setting up a wireless LAN. Personally, I like Encryption + Wireless Access Control (via Mac address). I don't like people to jack my network. Encryption, I've selected 128-bit ket length. Good enough for most of BF attacks.

NAT (Network Address Translation):
For allows multiple users at your local site to access the Internet through a single Public IP Address or multiple Public IP Addresses. NAT provides Firewall protection from hacker attacks and has the flexibility to allow you to map Private IP Addresses to Public IP Addresses for key services such as the Web or FTP.

Firewall:
basic way to keep basic intrusions away.

Second last stage, connect to WAN

Last stage, TEST TEST TEST, test all the functionalities you desired, you modified.

You are done!
Enjoy!

Friday, January 14, 2005

Devhood Training modules

Being one of the older activist of Devhood ( Http://www.devhood.com/ ). I finally re-completed my C#/.net Train of the modules.

I strongly recommand any experienced programmer (that have not yet, but is interested in Windows Programming/.net) to start here. Being a long time *nix programmer and an extreme programmer (program computer from scratch), I have somewhat off track in adapting windows programming. There are just too many API for me to know. And knowing coding by myself makes me more comfortable, I often make the mistake into not bothering looking up APIs. I have decided to change. Because my strong belief in Software Engineering techniques. Which made me realize the greatness of MS.

Back to the topic. Well, these training modules have been provided by Wintellect who specialize in training services for Microsoft technologies. These training modules are a great way to get started in .NET as well as enhance your skills if you're already an experienced developer.
Each distribution is made up of three modules. Each module contains sample source code, a tutorial document, and a slide presentation.

There were four distributions:
-Introduction of .Net Framework and the Introduction of C#
-Introduction of Common Languange Runtime (CLR) and .Net Framework Class Libraries (FCL)
-Advance programming skills and Advance features of .Net Framework
-Advance .Net Framework applications (or introduction to webforms -ASP.NET and Web Services)

Monday, January 10, 2005

Common Questions to TygerSoft

Common Questions to TygerSoft

Who (are you): We are Engineers. The people who won't just give up!

What (do you do): Software engineering. In particular, Web applications, Web services, providing solutions and products that would move the world forward.

Why (are you startup): Quitting steady high pay job to persuade something that really matters.

Where (are you located): Here, There, Anywhere. It is our belief that technology is without boundary. It is there to make the world a better place. We are starting in Taiwan because of the low cost of living. But, our goal is to head back to North America.

When (is this official): It will be official when we have steady income. As of now, the prep started 2004.

How (do you run this business): Please tune-in this site often.

Quoting Robert Donovan- Giving up is the ultimate tragedy.