Phine Solutions web work notes

vBulletin 4.0 vs. IPB 3

Filed under: my 2 cents — 1.618 @ 10:55 am

One of the big events in the forum software world this year is the release of vBulletin 4.0. As a license owner I took the pre-sale bait and purchased a new license for vb 4.0. The software looks not bad to me after I installed it on a test domain. CMS and Blog are nice additions. HTML table tags are gone. Although themes created for 3.x.x will no longer work and have to be completely re-done it didn’t make much difference on what I wanted to do.

After I dig into it a bit deeper this new concept of “StyleVar” really got into my head. It is as tedious to work on as it can be. So I hit up on the internet and see if there is any tips or tricks that I can use. Surprisingly all I got were complaints on VB 4.0. There seemed to be a lot of negative sentiment against Vb, specifically the 4.0 release.

Some mostly talked about complaints are:

  • Expensive and confusing upgrade pricing.
  • Skins created for 3.x.x versions need to be re-done completely in 4.0.
  • No significant changes in 4.0 and the code base is quite bloated.
  • The “Gold” release is still buggy.

As I sip through these and figuring I probably made a mistake purchasing 4.0 license I found Invision Power Board was being mentioned by a lot of people and got a lot of nice reviews too.

So I decided to give IPB a try. IPB offers a free 24 hour demo account and signing up was quite easy. After a little play around I was totally impressed by IPB 3.0.

What I really like about IPB 3.0:

  • The demo capability upfront.
  • The modular design approach. The IP.Board, Blog and Gallery are individual components that can be installed separately. Now this might not sound like a benefit for most of the people but to achieve this feature the code but be designed well from the ground up.
  • Powerful templates. The template design in IPB is very powerful, it contains variables and logics (such as if for foreach statements) and can take PHP code block directly. For lot of the board admin who don’t have the technical skills this might be a bit of difficult to manage but developers will like it.
  • IP.Converge, which provides a nice framework for the Single Sign On solution that I have been looking for for a long time.
  • The more advanced features like OpenId, Facebook integration and API capability.
  • Skinning IPB. Since I develop using HTML and CSS the approach that IPB takes feels easier.

What I don’t like:

Based on my personal experience the quality of documentation is a bit lacking. Part of the reason for this is that comparing with VB, IPB still has a small developer community. The IPB developer community hasn’t been as much active as VB’s, in terms of participating development discussions, writing tutorials etc. So if you have a question it takes a bit more researching and digging around.

Yes I switched to IPB 3.0.

Forum softwares have been powering the web for a long time but as new things emerge forums need to adapt too. It is a lot harder to run a forum board these days because of the low barrier to entry – a lot more forums are online these days – and competition from social network sites. This demands higher standard on forum software. Looking forward IPB has a lot to gain in the paid forum software market.

That being said vBulletin is still the most popular forum software at the time being. But it has been sitting on its own success for too long. Unfortunately its own success may be the biggest obstacle toward bigger and bolder innovation. The new 4.0 version is definitely an improvement but the change fell short. From what I gather most of the existing board admin chose to stay on version 3 and IPB 3 has become a serious choice for those who needs new forum software. So now it really is a do or die moment for VB and the vb team needs to get their act together to come up with a better next generation release to stay in competition.

What newspaper and magazine publishers can do to save their business

Filed under: my 2 cents — 1.618 @ 12:10 pm

The publishers have been losing their print business from left to right. Now with the 2010 approaching I think they are just going to get a golden opportunity to save their business.

Rumors on the street is that Apple will release its tablet device in 2010. Whatever it will be called it should be capable to get online and be used as a nice reading device since it is larger than a smart phone. And more importantly, it will set out a trend on more of the similar ones and cheaper ones to be built. What publishing companies can do is to build apps that work best on these devices to display their contents and sell subscriptions. However that is not enough. What they need to do is to give out devices for free (or close to free) like wireless companies do with their cellphones.

I suspect a lot of consolidation will also take place in the near future. As a result, stronger ones become content distributors. A tablet that can be used best as a “reader” is probably the best medium for the future content distribution.

home wiring 2.0

Filed under: my 2 cents — 1.618 @ 3:08 pm

We moved into our new home a year ago and back then the builder asked me about the network wiring of the house. Basically the home will be wired with cat5 cables for phone service. If I want a network (data) jack additionally, more cables will be added – and of course the cost. Buying a new home was financially demanding so I went on the cheap side of me and opted for voice only.

I have been using wireless network since then and I was generally pretty happy about it. However I’m moving my office to the basement and if the router follows me the wireless access will be very spotty from the second floor. Adding more access point is not a good option in my opinion so I decided to re-configure the wiring so I can have the wired data access in rooms that I want.

One big pre-condition for this setup is that I DON”T have a landline and don’t intend to get one. Like 20% of American household (and growing) we only use cellphones. I do have a SIP phone (basically a VOIP solution) and it needs a data port. Currently it is connected to my wireless router through a VOIP adapter. My VOIP phone is another good reason to have more data ports around the house. I have a cordless phone set which only needs one line to the base station (all the other handsets are cord free).

So I made the decision to go ahead re-wire cat5 to support data only.

One alternative – if you need voice jack – is to split the cat5 cable to support 2 jacks, one for voice and the other for data. Obviously that requires more work. Since this is not my configuration I’ll briefly mention it at the end of the post.

What is cat 5 cable

Here we need to have a little bit of explanation on cat5. “Category 5″ is a cable specification.

The cable looks familiar? Yep, you see it everyday if you look under the desk, around your ethernet switches.

A cat 5 cable includes 8 wires, every two of which are twisted together, known as twisted pairs. The wires are color coded, they are: orange, white orange, green, white green, blue, white blue, brown and white brown.

These wires carry voice or data signal. As a matter of fact, only 2 pairs (4 wires) are needed to support a 10/100 BASE-T network; only 1 pair is needed for a voice line. That’s why it’s possible to split one cat 5 for both data and voice. Again, in my case, I’m going all data.

Planning

A good planning always pays. Here is a list of things you need to check and prepare before start cutting wires.

  • You house is wired with cat 5 or cat 5e. Usually this is done in newer house and it can be confirmed by checking the outlet. It should say cat5 on it. If this is not the case, stop reading and go visit reddit.com.
  • You have “star” wiring. Meaning every single wire branches out from the central panel. If they are in a loop, you can stop now and go watch a movie.
  • You can access your switch board and it is either inside the house or in your basement. Because you’ll put cable modem and network switch there it needs to be securely located.
  • Equipments, tools and parts.

1. The cat 5 jacks. I bought 10 for $29 and didn’t even need one at the end.

cat5e-jacks

2. The Leviton data board.

leviton-vocie-data-board

3. A bunch of ethernet cables.

4. A wired router

linksys-wired-router

5. Some tools

tools

  • Internet downtime.

The internet will be broken for a few hours and you’ll need to let the wife know.

Let’s roll

1. Re-wire the patch panels

Note: I chose to do this first – instead of the jack – was because there is a chance the wiring of the jacks will work without any changes.

The following photo shows the patch board where all the cat 5 cables are originally terminated. Notice the third from the left is the new data board that I added. The builder’s contractor did a great job labeling the cable so I didn’t have any problem to locate the one that I want to rewire.

voice-data-panels

So I basically cut of the wires and punch them in to the new data panel (3rd one on the left). Remember the color codes for those twisted pairs? Now it’s the time to use them. Below is my color code mapping.

Wire color Board slot
Green Green
White green White green
Orange Orange
White orange White orange

Although the color codes seem to be a straight one to one mapping there is somewhat a standard to follow. And it matters because both ends of the cable need to follow the same standard to get the data juice flowing. Just remember T-568A is the standard we are going by here. You may or may not need to rewire the jack to T-568A, depending on what your builder used originally. To learn more about the standards you can visit this page.

The Leviton patch board has instruction on the color mapping on each punch slot so it was super easy to find the correct punch slot. It’s the first time that I work on these punchdowns and I have to say it was pretty easy to get a hang of it. Just keep a steady hand and enjoy that little clicks when you push the wire in. The plastic tool that comes with the patch panel was good enough for me and I don’t think you need to invest a $30 punch tool unless you are planning to do this to make a living. Again, I’m cheap.

This photo shows the two wires are terminated into data panel. The cables coming out of the black ports go into the router.

voice-data-panels-2

2. Connect the patch panel to a router

Now is the time to notify your family that the internet will be down. I took the cable modem and connect it directly to cable company’s video feed. Did I mention I don’t have cable TV? If you do, you probably need a splitter. Then, connect the cable modem to a wired Linksys router (I left the wireless router upstairs and it will be my access point). Now it’s also a good time to configure/check the router if it’s a new one. Once you verified it is online, connect it to your patch board and make sure you use the right port where the wires were terminated.

3. Check and re-wire the jack, if needed.

If you are as lucky as me your jack is a data port already. If not, it is possible it’s not wired using T568A standard so you’ll need to rewire it that way. The cat 5 jack should have a label on it that clearly indicates which color goes where for A or B standard so it should be pretty easy to punch and attach. Here is the color code mapping:

Wire Jack slot
Green Green
White green White green
Orange Orange
White orange White orange

As I mentioned I didn’t even need to rewire the jack but I did one anyway. Here is a picture:

new-jack-in-wall

At this point you should have one room wired. So plug in a your computer you should have the internet. If not, check the wires, connections.

4. Take a break and finish up

Now it’s a good time to take a break and give yourself a pad on the back. If you have more outlets to convert, repeat the same steps. Once you are done, tidy up the wires and outlets.

The old wireless router can now be used as a simple access point. Just make sure to re-configure it to a different static IP (192.168.1.2 for example) and turn off DHCP (The wired router is doing that now). Connect one of the LAN port to a network switch or a data jack you are done.

Voice + Data over one cat 5

As I mentioned I don’t use this kind of setup but since I did some research on it I might as well write it down.

Remember there are 4 pairs of wires in a cat 5 cable? We just used 2 pair. The 2 pairs left can be used for phone lines, and as matter of fact, two phone lines if you wish.

1. Make a phone jack

You can use a cheaper voice jack for this one. Here is the color code mapping:

Wire color Jack slot
Blue Blue
White blue White blue
Brown Brown
White brown White brown

2. Terminate phone jacks

Since I don’t have a land line of my own so I don’t get a chance to practice this. Basically one twisted pair can support one voice line so you can play with it and see what’s the best fit for you.

One suggestion is that you should use a regular voice jack, which is smaller than cat 5 jack so you can’t accidentally plug in data cable in a voice jack. Since there is always a chance the wires are not done correctly, the high voltage generated from the phone rings can toast your network adapter if the cable is plugged into the wrong jack.

Some think there will be data transfer degradation when the voice line is in use. Based on what I read and talking to friend who actually did this setup, it seems more like just a theory.

Document what you did

Once you get it working please make sure finishing the last mile before start surfing the web: documenting what you did. Label the wires, mark the jacks. Or write a blog post, maybe.

So that’s how I rewired my home to version 2.

As landline becomes less and less popular these days I really think this is a setup that may become more and more popular. As we are going to see more and more “network intelligent” electronic devices in homes in the future. Devices to stream internet video to TV is a good example and is already making the front run. With more bandwidth hungry devices in your home wireless access point can become a bottleneck. In that case, the more data port, the merrier. Of course if you are building a new home and have the chance and means, you can pimp the wiring up by doubling cat 5 or even adding cat 6. But for most of the existing homes, it’s not that easy to drag wires behind the walls and this might be a more feasible solution.

If I’m a big time publisher, what would be my reaction to Fast Flip

Filed under: my 2 cents — 1.618 @ 3:25 pm

Google launched Fast Flip yesterday. It’s an image browser for the snapshot images taken from web pages (they are categorized of course). It is very quick and it’s supposed to make online news reading fast and furious.

On the revenue side, there will be ads, and there will be revenue sharing with the publishers who want to flip with Google.

Google takes the usual product launching route. Put it in “lab”, collect user feedback and go from there.

If I’m a big time publisher like New York Times I would develop my own version of “Fast Flip”, NOW.

This is the exact kind of innovation that the publishers should take. You have the content, use it; you have the original digital copy, you can do better job converting them to images; the technology and development? a small team should be able to crank it out in a few months.

Snow Leopard upgrade

Filed under: my 2 cents — 1.618 @ 8:05 pm

Pre-ordered Snow Leopard and received it on Friday (the official release day) afternoon via Fedex. For a total order of $29 this is some treatment.

The upgrade was smooth for me. Just pop in the DVD and let it run the course. There are some nice interface tweaks, and not to mention the saved disk space. But a few enhancements that I like the best are:

  • Access over local network are much much faster. I have a shared drive in the LAN and it used to be a pain to view large images and QuickTime movie files over the network. After the upgrade, the delay is gone and the video plays smoothly.
  • The new QuickTime Player has the video, audio and screen recording built in now. Since my MacBook has the camera and microphone built in, making an video is as conveniently as making a few clicks and start talking.
  • The Microsoft Exchange support. Works very well. Enough said.

I’m no Apple fanboy but sometimes I love using Apple product because it provides an “environment”. An environment that has a nice mixture and balance of great design and usability. For us web builders, this is both an influence and inspiration. It helps us, in a subtle way, to make product with good taste and also works.

A nice feature on Bing

Filed under: my 2 cents — 1.618 @ 3:01 pm

Bing is the new search engine from Microsoft, although they call it “Decision Engine” we all know it is just a branding trick. I used it a little bit and I was pleasantly surprised.

The feature I really like is the preview feature. For example if you search for “PHP tutorial” you get this page:

http://www.bing.com/search?q=php+tutorial&go=&form=QBRE

A page from php.net is listed as the first entry, which is in my opinion, beats the result from Yahoo. What’s more, you can hover your mouse on each entry of the result page, a little link will appear on the side and you can use your mouse to activate it to show a preview of the page. I tested several queries and the previews are very accurate. The preview also shows other links on the page that are relevant to the subject, which help to decide whether this page is “click through worthy”.

I don’t know if Bing can dethrone Google on web search, and as long as Google continues delivering the relevant results it is hard for anyone to make a legit threat on its dominance. But MS seems to have some nice things going in Bing just off the bat. Since Google relies on its search engine for most if not all its revenue, MS has an advantage here to make some bolder move, and be more innovative, like a real decision engine that was just released: hunch.com.

I gave up on Vista

Filed under: my 2 cents — 1.618 @ 10:50 am

So all of sudden my wireless connection stopped working and I couldn’t “repair” it no matter what I tried. So I hit the reset button and guess what, Vista wouldn’t start. It just froze in the midway. I tried to repair the OS with the installation CD but it couldn’t fix it either. No errors reported, just stuck.

Luckily safe mode did work so I was able to back up all my files and made decision to re-install the OS.

I do have some decisions to make.

1. Re-install Vista. No way after this.

2. “Upgrade” to WIndows 7 RC. I don’t think I can trust this OS yet since it is just out of the oven.

3. How about Ubuntu? I do like it. However, I don’t want to have to load a “Windows” inside it so I can use some Windows Apps that I use every day.

So in the end I chose the good old XP.

It turned out I probably have a broken wireless adapter. It is a Buffalo WLI2-PCI-G54S card. In XP, when I tried to install the driver the system froze again and the installation screen shows “copying cbg54.sys”. Hard reboot is the only way to bypass this, but at least XP starts.

So the story pretty much ends here. It was probably a hardware issue and I don’t know if Microsoft is the one to blame here. Nevertheless it doesn’t seem Windows OS is handling this in a graceful way, or anyway at all. An OS with a good kernel should at lease prevent this kind of issues from making the whole system useless.

Oh by the way, I can’t believe I would say this, after a few monthes use of Vista, XP feels so clean and easy. I wouldn’t go back to Vista again even all the issues and concerns are addressed.

A great book to learn JQuery

Filed under: my 2 cents — 1.618 @ 9:18 pm

Being a half-baked JavaScript developer for a long time it wasn’t easy for me to grasp the concept like “selectors”, “traversing” and “utilities” in JQuery, and every time I started to write something using JavaScript it was always a series of events of Googling for sample code, checking the API, and Googling again for the right syntax if it doesn’t.

Recently I found this book “JQuery In Action” from Amazon and I was quite pleased after reading it. The information in the book is well organized and illustrated. And the authors explain the concept before digging into syntax and examples, so you not only know how to do code in JQuery, but most importantly, why to do it in this way.

My favorite subjects in this book are “understanding browser event models” (chapter 4) and “JavaScript that you need to know but might now”, the later is actually an appendix. They fill the gaps in my JavaScript knowledge and brought some new but important perspective on how it really works.

The lab code is great and it will probably help me quite a bit for my future projects.

So if you want to get serious about JavaScript programming, get this book. It’s definitely worth the read.

Mac OS X Time Machine saved my day

Filed under: my 2 cents — 1.618 @ 8:38 pm

I had a couple of files on my Macbook which I accidentally deleted without knowing it until a couple of days ago. They are quite important files and without them I might have to spend hours to recover the loss. So I gave the Time Machine a try. It was simply amazing. I went into the Time Machine and typed in the key words that I vaguely remembered and hoped for the best. The Time Machine started to search all the saved points and in seconds it found those files out and I was able to restored them.

I keep my files on my machines regularly backed up, but I honestly can’t think of anything else that can do this good job on keeping different backup points of the system and make them easy to retrieve. I guess this is especially useful for me since I love doing cleaning up on file that I don’t recognize :) .

IE session cookie problem

Filed under: my 2 cents — 1.618 @ 7:18 pm

So I ran into this issue. It appears under certain set up, IE will reject a session cookie, or randomly drops them. I use PHP session to store user authentication information and some of my IE users were not very happy about not being able to log in or getting kicked out of a login session randomly.

The biggest challenge is to duplicate the issue. IE’s security and privacy settings can both affect the way it handles the cookie, and even the same settings on different PCs can have the different result. It is absolutely frustrating to have users shouting at you “This doesn’t work!” while everything works perfectly fine on my own machine.

After a lot of research I ended up completely abandon the session approach and use a database back end to handle the user authentication sessions. A regular cookie is still necessary to store a token (ex. a user id) to identify the user, but instead of using the SESSION variable, I use a database table to store the user token and the last access time. This will certainly complicate the setup – a cron job has to be installed to perform the database clean up; and the increasing the database queries – basically for each access from a “tokened” user I’ll need to update the last access time – will also add some tolls to the performance. However the payoff is also obvious. I don’t have to worry about the different IEs out there, who may behaves differently and sometimes in unexpected mysterious ways thanks to Microsoft, to reject my delicious cookies.

Just for the sake of discussion, there may be a number of reasons that cause IE to reject session cookie:

1. To many cookies from a site, or IE runs out of temporary space. There is a max number of cookies that a site can send. I think 20 is the limit. A lot of good discussions can be found on this thread.

2. IE’s P3P implementation might also have something with it. This is a good article about IE’s Eye of Sauron. There are some suggestions to bypass this by adding a P3P header, which is as simple as a line of characters to your pages. I don’t like the idea mostly because this is not the right way to fix a problem which shouldn’t exist in the first place.

3. There might be a slightly chance that your server time stamp is out of sync. For example when you set a regular cookie use something like “time() + 28400″ in your PHP code to specify the expiration time, wrong time stamp might put your cookie in the history already. This issue is a lot easier to spot since none of your sookies work, not just the session cookies.

Next Page »

©phinesolutions.com