Hiitch Server Design Overview  

August 8th, 2007

Comment icon1 Comment

Server Design Overview

The Hiitch server is a multi-threaded application server that you can tune to scale it to your desired hardware setup. It also implements customizable security features that you can use to secure your own network’s integrity and privacy. Hence, understanding some of the key concepts in its design implementation is important. We will begin by describing the detail interaction process that goes on in the server that is unique to every individual Hiitch network implementation.

Server Interaction Process
Before any information is communicated between the client and the server, the clients will first request for the authenticity of the server. Each client has an associated digital certificate that ties it to a particular server. The client will then verify the digital signature to see if the content is coming from the intended server and proceed to send its confidential information to sign in to the server. This whole verification process is unique to each network. During the server installation process, our default script will assist you to generate a set of public and private key pair, also known as a digital certificate, that identifies your particular network. Without generating this digital certificate and exporting the cert to your clients, the integrity of your network can be easily compromised. Once the verification process is correctly completed, the clients will start a new secure session with the server.

Server Threading Model
Once a secure session has been authenticated and started on the server, its threading model kicks in. All clients requests are harvested and then independently processed by a pool of worker threads. You can tune and configure the total number of threads you want as socket harvesters and the number of worker threads attached to each socket harvester. The flexibility of the threading model will enable you to control the performance ratio between accepting requests and processing instructions on each server. Socket harvester threads are responsible for receiving incoming requests and then queue them up for processing by worker threads. Worker threads are responsible to resolve incoming requests to a combination of instructions and then processing those instructions to satisfy the requests. The result of this design is a very advance, efficient and scalable server that you can optimize with your dedicated hardware setup.

Server Performance Considerations
The Hiitch server was also designed to work with other techniques that can help you to easily and cheaply scale your network. A few of these techniques that you can use in combination are load balancing, network file system (NFS), high availability and etc. With a good amount of bandwidth, you can improve your social network performance by load balancing multiple Hiitch servers on a few old computers sharing their storage space using NFS. Hiitch servers will work seamlessly across the entire cluster of machines as if they were one single computer. High availability is a build in feature on Hiitch servers, although not extensive but it should be reasonable enough to meet your average needs.

Future Server Developments
Future developments will move toward a peer to peer (P2P) Hiitch servers system with clients that can connect across different networks securely and dynamically.

If you are interested to read more, other earlier technical articles about Hiitch can be found here.

File iconFiled under: Tips and Tricks, Features User iconby geek | Tack iconAdd Comments
AddThis Social Bookmark Button

Software Components Overview of Hiitch  

August 1st, 2007

Comment iconNo Comments

The Hiitch platform consists of three basic software components. These components are aggregated together on the desktop to produce a seamless real time social networking system. In due time more components may be added to provide richer functionality and online services but we will just focus on these three components for now.

Hiitch Components OverviewHiitch Server
The server is the most critical component of the entire platform. It manages all the critical information and the security of the platform. The Hiitch server is a very advanced piece of software. It understands complex instructions and allow the clients to interact with it through pure XML. It was designed to function very much like our human brain. At the core, it is preloaded by a set of generic instructions that are common to many online services provided by web servers. However, it is far more advanced than today’s web servers in the way it processes and understands information. A typical interaction with the server starts with the client communicating a set of XML instructions to the server. The server then processes the client’s XML request and resolves them into a combination of runtime instructions. These instructions are then aggregated to perform a complex operation. The server will also determine at this point if the requesting client is part of the system and is authorized to carry out those operations. If all is well, it executes and processes the request and returns any results. Each interaction between the server and the client are done on a dedicated pool of threads that provides the parallel processing nature of the server. Depending on your hardware, you can decide on how you want to scale the server to meet your number crunching needs by tuning the threading model. You can also easily customize the server’s runtime behavior and operations by adjusting the instruction set that it is preloaded with. We will discuss more about the details of the server on another post. ;)

Hiitch IM Server
Hiitch was never meant to be an instant messaging (IM) system. IM in Hiitch is just another feature that we provided as a means of communication and not its defining characteristic. Hiitch is a social networking platform which has IM facilities among many others and not the other way around. With that said, the IM facilities in Hiitch is very much a peer to peer (P2P) system. The IM facilities should be more accurately called a routing facility than a chat server. The reason for this is that, the IM server does nothing more than route the interaction between both clients to each other. It does no processing except to work with the Hiitch server to determine if the clients are authorized to use the system and to notify both parties of any incoming initiation for interactions. There is a need for this routing facility because many networks are not designed or configured to work with a P2P system. The IM facilities on Hiitch is still very much a work in progress and you will see more of it in later stages of our development.

External Services
External services are not connected to the Hiitch server in any way. Client developers are free and encouraged to implement facilities and features of their own through this avenue. Although external services are not considered part of the Hiitch platform, but it is still part of the social interaction process that the user is experiencing on their desktop. We have implemented two examples on the client that we thought was useful. The first one is the delivery of interesting events as an autosuggestion to the user based on his/her location and profile. The second is the real time updating of the user’s shout message and default picture to our web widget that can be found on our blog. Developers desiring to extend this portion of the Hiitch platform do not need to understand how the Hiitch system functions but are still able to integrate their software into our social networking experience.

You can read more about Hiitch’s Network Connectivity Overview here.

I hope that this article will get you excited about developing with and on the Hiitch platform. You are encouraged to sign up an account with our default network and use it as a means to contact us or interact with other developers of the Hiitch platform. Just download the default client and join us today as part of our community!

File iconFiled under: Tips and Tricks, Features User iconby geek | Tack iconAdd Comments
AddThis Social Bookmark Button

Is Open Source the Way to Go?  

July 3rd, 2007

Comment icon5 Comments

We have been discussing among ourselves about open sourcing Hiitch for a while now. When we say open source Hiitch, we mean both the server and the client code. A totally complete and open desktop social networking platform that others can use, extend, customize and redistribute on their own. Can open source really help us compete or is it the end of us? We have only recently come to an agreement that open source is an option that we will seriously consider in the near future. We have put into Hiitch our heart & soul and we are unsure if open source is a right move at this stage.

Why do we want to open source Hiitch?

  • We envision Hiitch to become a free but personal social networking platform that everyone will use to meet new friends and stay connected. No barriers!
  • We want to move the development fast enough to challenge the current market players and existing technologies.
  • We desire a vibrant development community that will keep innovating with us.

Our biggest problem now is that we do not have the financial resources to fulfill all or any of the above goals. My argument for open source is that we can allow others to build smaller networks of their immediate social circle and then build software to connect these smaller social networks together to form a mega network of independent networking peers. We can achieve this with little or no cost at all using open source approaches. The open source community has already shown that the last two points is workable so I will not elaborate more on it.

What are our fears of open sourcing Hiitch?

  • It scares away potential investors and greatly reduces our value as a commercial company.
  • The open source community do not see a need for such a product and hence no vibrant development community.

The worse thing to happen is that we cannot financially support ourselves to innovate and develop ground breaking software for the social networking messes. Merely selling value added services on top of a free software platform is also not an easy approach. We also worry that a geek community cannot attract enough normal average users for which a life style application like Hiitch is build for.

Feel free to share your views with us on this matter.

File iconFiled under: News, General, Others User iconby geek | Tack iconAdd Comments
AddThis Social Bookmark Button

Want to invest in Hiitch?  

May 25th, 2007

Comment iconNo Comments

Hiitch Pte Ltd is looking for investors who has/have the same vision as us and is/are willing to join efforts with us to establish the next generation social network. We have not been seriously looking for investment up until now. The main reason that we are starting to look for investment is because we realize that Hiitch needs the financing to expand faster to level the odds with our competition.

Hear Us Out!

You may think that on-line social networking is almost over with huge domination from companies such as MySpace, Friendster, Facebook, Bebo and etc. However, we think otherwise! On-line social networking is far from being over but just beginning. There are lots of areas in this field itself that has not been researched and explored but has great value. Communication tools aside, many of these existing services only allows you to place a profile and wait for things to happen. We classify these services as hit and run because of the way they encourage their users to relate to each other. But we envision Hiitch to be far from these hit and run services.

Hiitch is about researching and exploring at real time:
- new ways for you to meet people of your interest.
- new ways for you to widen your social circle.
- new ways to tract your relationships with others.
- new ways for you to find deals and opportunities.
- etc…

All our work is centered around the context of a personalized community in the space of a larger social network. Work in these areas have huge implications not just for the average net-citizen but also for businesses, organizations and etc.

Drop us a mail or contact us directly if you have interest in investing on what we are doing.

File iconFiled under: News, General, Others User iconby geek | Tack iconAdd Comments
AddThis Social Bookmark Button

How to build your own secure private online social network?  

May 15th, 2007

Comment iconNo Comments

When we first started working on Hiitch our focus was mainly on on-line dating. However, as we progressed, we realized that Hiitch was becoming more and more like a dedicated and secure social networking software than merely an on-line dating tool. We like to see ourselves as still in the process of allowing our users discover for themselves what Hiitch really is to them. In this article I would like to discuss a few examples of how you can make use of Hiitch for your own social networking purposes. Hiitch has many features that can help you deal with your everyday social networking needs that cannot be found in today’s instant messaging (IM) culture. Before I go on, I like to highlight the fact that Hiitch is not and never will be an IM software. IM is only a supported feature in Hiitch and not what it is about. Hiitch is about discovering new people on-line and providing a common ground to communicate and share yourself with others. OK lets proceed with the scenarios that Hiitch can be of use to you.

 

Scenario One: Work

You have a small company or team that you work with. Everyone is usually hard at work on their own desk all the time. Some of them are physically not in the office most of the time. You would like to setup a dedicated network with them so that you can share things on-line and communicate more simply together at real time. You thought about using MySpace, Facebook and etc to help you tie everyone together but you hate the idea of checking your web browser all the time for new information. You are also skeptical about all the negative publicity about security and etc from these service providers. You feel that the common IM software like MSN live, Yahoo messenger, and etc just isn’t cut out for your social networking needs. This is where Hiitch can help you.

 

Hiitch sits nicely on your system tray and notifies you when items of your interests are received. Your contact comes on-line, you are notified (only if you want to). Someone in the team sends you an urgent file, you get notified and that file remains available for you always at anytime and anywhere until you choose to remove it yourself. If you are offline, messages send to you are kept for you until you come on-line. You can even send quick messages to your teammates without disturbing them during their work through your contact list. Your on-line status on Hiitch will help maintain your intentions to others in the network. So, if you set ‘do not disturb’, then no one can IM you directly. If you set yourself to ‘private’ then only your contacts will see you as on-line and etc. A new team member comes aboard and you are interested to get to know him/her, you can simply browse their profile card and read more about them, browse their photographs and etc. You can post news about company events or instructions on the community interface and notify your team as soon as you post them. If you keep them private, only your teammates in your contact list will be able to read them. You can also get others outside your team involved when you require feedback on ideas, get advice from others or want to do a community survey. You can also setup appointments with your teammate in another country without worrying about time zone conversions, Hiitch does it for you automatically and notifies both of you when the appointment is due.

 

Scenario Two: Play

Have you ever considered your own secure private social network? You are old enough to be responsible for yourself. You want to meet new people and get others to notice you. However, you don’t want to look desperate and try those on-line match making sites like eHarmony, Match and etc. You like your social life to pick up but you want to do that at your own time and have it all in your own control. You would also like to keep your existing friends and family as part of your private social network. This is where Hiitch can also help you.

 

Hiitch allows you to setup your own prospect criteria and helps you find them automatically. You just need to make sure you put in the right information about yourself and the kind of people you are looking for and leave the rest to Hiitch. When Hiitch finds people that you may be interested in, you get notified about them. You can then choose to view their profile immediately or bookmark them for later browsing. If the person that you have bookmarked has also done like wise, then Hiitch will notify both sides to encourage you to get to know each other better. Hiitch helps you keep track on the interactivity with others on your contact list. When you see that your interactivity with your best friend is getting low, you can send him/her gifts to brighten his/her day or just simply message or IM to keep in touch. Hiitch is not just about serious social networking. You can also search for other people manually and browse their profiles and pictures at your own time. You can even vote for pictures that you think are cool or just purely interesting if you like them. If you find a handsome man or babe, give them the compliment by voting for their pictures. You can also publicize about yourself by writing articles for the Hiitch community at your own spare time to share your views and ideas with others. Who knows, may be you might just become the most popular person within our community.

 

Hiitch is made for you to reach out to others and also for others to reach out to you simply and easily! There is much you can discover with Hiitch. Try it for yourself today by signing up for our private invitation into Hiitch.

File iconFiled under: General, Tips and Tricks, Others, Features User iconby geek | Tack iconAdd Comments
AddThis Social Bookmark Button