Planning the Intranet IV

This morning I finished building the WSS Webserver we will use to build our intranet on. To be fair, it was very straight forward and did not gave me any issues aside form the speed, as I was working on a VM copy of the real server.

I made a virtual copy of the live server, to do a test run of the set-up. I used the VMware converter which is simple to use, and gives me an exact copy of the live server. I used this to complete the setup and configuration. This way, if any problems appear, I am aware of them and can prevent them from occurring on the live machine.

I did however encounter one small issue, which is completely my “fault”. I did not check in advance how to set up the email configuration for outgoing and incoming mail. The server is a standalone installation, not part of a farm, and I believe the WSS server, although standalone, should be able to benefit from the UK exchange environment for the mailing purposes.

Another thing I now have to have a look at is the way we will “upload” the custom applications we will be building. My best guess is that we will set up a site in IIS for each which we will link to from within the WSS site. However, I would have to have a look on how this can be done. Shared folder, Frontpage extensions, don’t know yet. We will be developing in wither visual studio, or on the VS Web developer express edition, and I’m not 100% sure what is the best way to publish the applications we build in there.

Planning the Intranet II

Seems like someone in the company has read the post about the intranet re-design. We received communication that a complete organisational layer will be disappearing! This was actually what I hoped for because I firmly believe in flat layered organisations. From what Ive seen in different companies, is that flatter organisations tend to embrace employee empowerment, are quicker in their decision making and more flexible in fast moving/changing markets (like the IT business we operate in).

I also believe that this will enable me to design the intranet in a much more useful way. The platforms we implemented lately are web based platforms to enable and improve both horizontal and vertical communication. My biggest fear was that with the classic org-chart the company has here these platforms would not be used to the fullest. Especially when I received the first ideas from management, in which they actually wanted to implement the full structure of the organisation in the intranet design.

As it looks now, I’d have to go back to the drawing board, which I’m happy with, because now it looks like we can design a modern intranet, that will actually enable cross-team communication and combine that with a sound knowledge management strategy.

Knowledge Management (KM)

As mentioned in the previous post, we are now looking into setting up a whole new knowledge management strategy for our office.

Currently this is dealt with per team. We have approx 250 people working in 15 account teams, giving IT support. Each of these accounts have their knowledge base and their knowledge management processes (if any). As you understand this is not an ideal situation. It is impossible to benefit from each others’ information, and there are a lot, really a lot of double, even triplicate documents. (after all most of us troubleshoot a printer in a similar way).

For a company that is trying to standardise all over the place, this is one of our worst areas.

According to many KM specialists, the first step in this whole plan should be to make sure we have senior management support. This to be honest is more difficult as it seemed. I was convinced that knowing the above, and actively trying to standardise, they would listen to a plan like this, but soon found out the “the idea is good, but it will be too expensive, or take you too long”. Yes, there will be a cost, and a considerable effort, but the return will be a very valuable asset; Knowledge! The work we do at service desks is for a huge part based on the knowledge we have at hand. An analyst can be great in troubleshooting and phone skills, but without documentation…. After all, none of us knows everything.

We are now at the stage that the senior management team is interested in our plans, but we are still not getting a clear go-ahead. This causes us to have to work on the plan outside office hours… :(

We already have the main outline of the plan. We have the platform (wss) and bit by bit we start to get support. I’m sure that one of these day’s well get the “official” project request. Then we can start gathering people to set up a small project team, and present our plans to the different teams, to get their feedback.

Also, we made a SWOT analysis of the current tools we use, which will help a lot identifying the requirements once we reach the lower level of our plan, which is how the database design would look.

At the moment we are putting everything we’ve got in a high level project plan. Mainly to keep ourselves on track and focused on the parts that are important at the moment and not get in to too much detail (which is a common mistake techies make!). As soon as we have it ready, Ill post an update!

La Quiniela – Excel Data Import

Football (yes, soccer in countries where it is hardly played ;) is big in Barcelona. Really big! I have always enjoyed watching football games, but nothing like I’m now, here with FC Barcelona! Especially this season is spectacular. I also started, together with my girlfriend placing bets or “doing the quiniela”.

The quiniela you play by predicting the outcome of 15 games played, mixing 1st and second division games. You either bet on 1, X or 2. hometeam losing, equalled or lost. this is how the form looks like:

quiniela1I wont explain how it works, it is far too complex, and even after many years here, I have still not discovered them all.The idea is that I play with my girlfriend(who luckily likes football too) and this gives us a tiny bit of football thrill in the weekend. A few weeks ago I started to look and see if I could make this in an excel sheet, so I can have a view on how the games are going on each goal scored.

This excel sheet started out very simple. I would manually copy my bets, and enter the scores every time I heard “gooooooool” on tv, or checked using teletext(a technology with no reason to exist). Then, after a while, basically because one weekend we where late, filled in the sheet, and did not get to the betting office on time, I filed my bets on line.

Sometimes, when you live in spain, you expect certain things to either not work, or not work well. This was not the case,  and I found the spanish betting website to be very practical. It lets me fill in the exact same form, by ticking the boxes.

(If the Internet was not partly blocked here I would have had a screen shot…. Somehow they do not see betting as a work related activity…)

After validating the bet you get your bet presented on your screen like the ticket you get in the Betting office. a text overly on the image of the ticket, basically like this:

1    1    1    1    X     X
2    2    X     2    1    2
3    1    1    1    1    2
4    1    1    1    1    1
5    X     X     1    1    1
6    1    X     1    X     X
7    X     1    1    1    1
8    1    X     1    X     X
9    2    2    X     1    2
10    1    X     1    2    2
11    1    2    2    2    1
12    2    X     2    X     X
13    X     2    2    1    1
14    1    1    1    1    1
15    X

I copy pasted this in excel and one part of my excel sheet was already a bit automated (there was no more need to manually get the bets in) This made me think about a fully automated one, that would display the live scores and display the cells with the bets color-coded, and at the bottom the total amount of winning bets. Here is where the problems started. The color coding was pretty easy with excels’ conditional formatting. With a few IF functions this was starting to look good:myquini

The yellow column is the game status changing when I started entering the results. The blue cells are my bets, changing colour when games are playing according to the live result.

I use Office 2007 at work, and at home. When I browsed around in excel, I found how easy they made the data import! getting the data from a text file where I saved my bets was a 2 minute job.

I also discovered the get data from web functionality. I started playing with to find out if I could get the live results from some website, and use this to refresh my sheet each minute. This was not as easy as I thought. It would be, if the websites would update their data each minute, but I guess it is hard to find a volunteer to go to the office on Sunday morning to cover just 1 second division game. The only Live source I found was … TVE Teletext:(

If you check the link, you’ll see their page has exactly what I needed, and on top of that it is updated almost by the minute. The only but… is that they present it as an image!!

That made me have a more thorough look at the page. after looking at the source code, I saw that the alt tag of the image contains all the data. Ready to be extracted!

<img id=“FABTTXImage” src=“210_0001.png” width=480 height=336 usemap=“#210_0001″ border=0 alt=“210.1 Q U I N I E L A tve Jornada 40 22 MAR 2009 1 Getafe C F -Rec Huelva 1 FINAL 2 Sevilla -Valladolid 1 FINAL 3 Barcelona -Málaga 1 FINAL 4 Real Madrid-Almería 1 FINAL 5 Villarreal -Athletic 1 FINAL 6 Mallorca -At. Madrid 1 FINAL 7 Osasuna -Espanyol 1 FINAL 8 Deportivo -Betis X FINAL 9 Numancia -Sp de Gijon 1 FINAL 10 Elche -Hércules X FINAL 11 Murcia -Alavés 1 FINAL 12 R.Sociedad -Girona 1 FINAL 13 Salamanca -Tenerife 2 FINAL 14 Albacete -Huesca 2 FINAL 15 Racing -Valencia 2 FINAL 15 25 55.295,44 12 23,31 14 88 18.850,72 11 3,60 13 3874 285,47 10 1,00 CUENTA NARANJA 3,5% TAE 4 MESES.553″>

Great I thought. I am still playing with my Google maps page, and was already learning quite a lot of javascript with that, so this was a perfect chance to keep learning. I used the PHP include to get all the pages code, and then made a small (java)script that reads the HTML code, then with a few regular expressions, it displays an html table with the live results.

<html><head>
<script type=”text/javascript” src=”jquery-1.3.2.js”></script>
</head>
<body>

<?php Include (“http://www.rtve.es/tve/teletexto/200/210_0001.htm”);?>

<TABLE border =”1″>

<TR><TD>Results</TD></TR>

<script type=”text/javascript”>

var page210, page210New, page210Res;

// get the alt text of the image in a variable

var page210 = document.getElementById(“FABTTXImage”).getAttribute(“alt”);

// remove first part

remove = “210.1 Q U I N I E L A tve Jornada “;

page210noIntro = page210.replace(remove, “”);

// Take date off

page210noYear = page210noIntro.replace(/\d{2}\s\d{2}\s\w{3}\s\d{4}\s/,”");

// should be the line to extract score and status

page210Res = page210noYear.match(/(\s(-|1|X|2)\s(FINAL|-)\s)/g);

// Build the table

// start a for loop to run through the elemnts of the array

for (i=0;i<page210Res.length;i++){

// write a row for each entry

document.write(‘<TR><TD>’ + page210Res[i] + ‘</TD></TR>’)}

</script></TABLE></body></html>

This did the job fine, If you like have a look.

When I tried to import this into excel, all went pear-shaped! Excel could only read the first line of the table and nothing else. AAARRGHHH!!! was my first reaction, until I thought about it. Excel might have problems with client side javascript. Don’t ask me why, but that was my first thought.

(It could have been anything to be honest, maybe even some security setting in Excel!)

Again, I was sat back a bit. The next and last thing I wanted to try, I sto do the same thing completely in PHP. As this is a server-side language, I thought that excel must be able to render its contents.

This is the PHP script I wrote:

$page = “http://www.rtve.es/tve/teletexto/200/210_0001.htm”;

// read from where to where

$start = ‘alt=”210′;

$end = ‘>’;

// open the page

$fp = fopen( $page, ‘r’ );

$cont = “”;

// read the contents

while( !feof( $fp ) ) {

$buf = trim( fgets( $fp, 4096 ) );

$cont .= $buf;

}

// get html contents

preg_match( “/$start(.*)$end/s”, $cont, $match );


// tag contents

$contents = $match[ 1 ];

//Start stripping text
$remove = ‘/.1 Q U I N I E L A tve Jornada /’;
$replacement = ”;
$contents = preg_replace($remove, $replacement, $contents);
$remDate = ‘/\d{2}\s\d{2}\s\w{3}\s\d{4}\s/’;
$contents = preg_replace($remDate, $replacement, $contents);
$addBR = ‘/\s(-|1|X|2)\s(FINAL|-|1ºT|2ºT|DES)\s/’;
preg_match_all($addBR, $contents, $array, PREG_SET_ORDER);
$count = count($array);

echo “<font face=’arial’ size=’8′>”;
echo “<table border=’1′ width=’250′>”;
echo “<tr><td width=’125′><B>Resultado</B></td><td width=’125′><B>Status</B></td></TR>”;
for($i = 0; $i <= $count; $i = $i + 1)
{
echo “<tr><td>{$array[$i][1]}</td><td>{$array[$i][2]}</td></TR>”;
}
echo “</table>”;

I’m sure that I can reduce a lot of code here and merge a few regular expressions. Maybe, Maybe not.

To my big surprise it did. It rendered the table very nicely, without the ugly include I needed with the previous solution. And best of all, I could import the data directly in excel!

Job Done, Mission accomplished. Last weekend was the first test and we both enjoyed watching the “minuto y resultado“  television show, with the excel sheet on the side updating itself every minute, and showing us how each goal influences our bets. Really nice.

(by the way, I play now for over 6 years , and managed to win 20€ once!)

EDIT: I believe that I can automate the import of my bets a little bit more. Maybe a button in firefox, that saves the bets to the text file…. To be continued…

Fon-Tastic! – update

unfonnedWell, today (actually my last day before x-mas leave… ;) ) in the office we did quite a lot of testing (since we also did quite a lot of drinking afterwards, I will not be able to tell what we exactly did;)

I found however, that the DD-WRT firmeware for the fonera (now using V 24 SP1) is a bit different then DD_WRT for other routers. My friend MF who uses DD-WRT on a netgear router saw that with the fonera it is not possible to put the router in repeater mode. (this is what he uses to make the router act as a repeater… duh!!).

This made us think it would be impossible to make the router repeat the wireless signal to wireless and the we would need to be physically connected (cable) to the router to be able to connect to our “distant” accesspoint”.

We then did some tests using the different modes to be able to make the router repeat the signal of the access point it was connected to, while we where both connected though a wireless virtual interface.

This works now and I have set this up at home. It works great! My router connects to a router closeby, but not close enough for my laptop IPW3945 Wireless card to pick it up. I have attached a windsurfer homemade antenna pointing to the accesspoint which increased signal quality by allmost 20%!!!

freeantennaAs this was my end objective, Ill leave things as they are now. At least untill my friendly neighbour (offering his open ADSL connection and router access) makes a change on his router*.

Ill post some pictures of my setup soon! (…)

* He should be very thankfull, as his router would disconnect from the ISP very frequently, leaving him/us without internet for hours or sometimes days. This has been sorted now, thanks to a small script that runs on my router, pings google, and if the ping fails, runs the connect command.

Developping Distance

As promised in a previous post, Here is a shortlist of the first things I discovered when moving from Lotus Domino to ASP/SQL as an application Development platform.

Of course this is far from complete, but gives you an idea what its about. I will populate it over time. As I have just created one small app, I cannot list all the possible differences….. for the moment, the most obvious:

biggest differences between developing a simple database driven application on the Domino platform compared to the MS ASP.NET/SQL Environment
DOMINO ASP/SQL
Data Layer No Intervention req. Using the Domino designer, only the fields need to be planned. + SQL Database needs to be planned and set up. -
Data connections need to be planned and set up.
Application Layer Formula language, very easy to learn. (ex. @mailsend(“Alex K”;”cc name”;”bcc name”;;”Subject”;”Mail Body text bla bla) + ASP / SQL Both not an easy language to learn. However not impossible either, depending on your capabilities. -
Lotus script, very similar to plain VBScript. -/+ to create a simple application, no coding is required. +
Presentation Layer Domino Designer is not really made for developing for web clients. However, using css pages, and “render as HTML” make it possible to layout your site well. However This is not very straight-forward, and will take a bit to get a hang of. - The Microsoft VWD is clearly a web development tool. Layout and design are really easy. +
Other Access control easily managed, up to field level + Access control depends on set-up, Active Directory access makes things easier, while using roles in the asp.net user management console can be quite complex when managing multiple applications -
Application:

1 database table

1 form for entering data

1 reporting view

Access Control

I’m a fonero!

El Movimiento FonAt home, my on line experience differs by the day. I purely depend on my neighbours who have an unencrypted connection to be able to connect to the Internet.

As I am living abroad, Internet is something kind of indispensable, keeping in touch with friends, watching some dutch TV shows etc. However, the prices for Internet access are ridiculous, as is the quality.

When I first heard about FON, I decided not to sign on, and first have a look at how the project was evolving in Spain. Mainly because this country is sometimes a difficult technology adopter. However, I now checked back, after almost a year and found a lot of fon wireless hot-spots in my neighbourhood.

Since I’m a bit of a techie, and like playing/experimenting, I have now signed up. The main idea behind this is to build an antenna which Ill put up on the roof of my building. with this, I hope to be able to access the 3 hot-spots I have around my house. However, since I do not pick up the signals from within my apartment, I will try to build a directional antenna. (I could just go out and buy one … but then … where is the fun?).

When I succeed, and manage to have an always on Internet connection, I will put up a secondary antenna (omni) to share with a much larger area. This I believe is just how the fon mentality should work; Have connected people share their connection.

I have been experimenting with home build antennas a bit, and found that in an easy way you can build a pretty string antenna, or make an omnidirectional a directional antenna. With the help of Mathias, a equally techie friend, have successfully made an amplifier for my wifi USB-Stick, which increases signal by almost 10%. This gave me the confidence I needed to start this home-project.

If anyone has a good experience with a specific antenna mod, please let me know!

UPDATE: although I signed up for fon only last Friday, today my router was delivered!! this was completely unexpected as the delivery was supposed to take 3 weeks!

Some more information about fon:

http://www.fon.com/en/info/whatsFon

Check if you have hot-spots close-by:

http://maps.fon.com/

That’s all for now, more updates to follow!

movimiento fon!

Learning…..

lately I do not post that often. Well, to be honest Ive never been a very frequent poster. My problem is, if you can call it a problem, is that I prefer to do that to write about what I could be doing. Luckily enough, there are some gaps at work, in which I can dedicate some time to update this blog.

Last time I was excited about the speed in which it is possible to, from no knowledge whatsoever, build a decent database based web application. Now, a couple of weeks later, I started the Visual Web Developer again to see if I still manage.

The result is surprisingly Yes, I manage!! Still on a very basic level, but I had no time in the last two weeks to study, read or watch any of the training materials out there. I had to work on a couple of domino projects. To be fair, its very hard to work on both platforms simultaneously. I get too confused by the different terminologies etc.

Today, I will start to have a look at what I am capable of building without using the help or alike. This is a technique I often use to learn something and allows me to know exactly in what areas I still lack some knowledge. Also I would really like to know if there are any other Domino app designers that had to make this switch to MS. I guess there must be loads, mainly because in Europe I believe the businesses are more and more moving towards a non-domino environment. Soon I will explain my findings. However if there is anyone out there that can help me draw up my “road map to MS”, I welcome your comments/hints/help!

The Sharepoint Adventure – Part III

For a couple of weeks I did not have any spare time to look into the share-point Implementation project. Last week, however, I managed to get some days free to look into the plans.
I am working with another technical lead on this, and he is taking some pressure of our back, so we can really study this well.

Last Thursday, I decided to take a look at the technology behind it… ASP of course!

I used to (more that years ago) build websites as a freelancer. As a freelancer, my budget was limited (budget : = @Number(“0″) + @Text(“€”)!) and I learned to develop using PHP, ans MySQL. This worked more than fine for me. Also Learning PHP to a level you can use it to connect to databases, insert data, retrieve etc. is not too hard.
And the best of all… It´s all Free!!

Now however, in the office I am working, the price of legal software is not important anymore, and on top of that, we receive the Microsoft Action-pack, with new releases and training licences. This opened up all kind of experimentation with MS technologies.

Last Thursday I installed a copy of Microsoft Visual Web Developer 2008 Express, with SQL Server 2008. Biggest surprise of all… Its a Free download! Combining that with the standard IIS Server which comes free with most windows systems, you have a pretty nice Web development platform.

Since the interface confused me a bit, coming from Domino Designer, I started watching the MS Training videos , and over the weekend I followed a couple of tutorials.

I found myself building a complete application by Saturday! To be very honest, I have always been advocating Open Source and Free software. However It looks like Microsoft is taking care of their low budget developers and it works! There are quite some similarities with Domino Developer (v7), even though VWD looks much more web-facing and using the toolbox is a real joy! also the whole data-layer architecture, makes connections with databases something I understand!!

Well… Ill stop now, before I sound like an Uncle Bill add.

European Championship´s on

Not yet, but in a months time, well have the European football/soccer Championship. Great, I really love it!! In this part of Spain though, the people do not tend to watch a lot. The Catalans don´t feel Spanish and don’t get in the mood as the rest of Europe. The Dutch go crazy, everything turns in to orange, the national color.

Now, the really interesting part is that in the office, I’m asked to set up a system, so most employees can watch the games. The rules are: Nothing Illegal and No (Bandwidth) problems on the network.

2 Years ago, with the World Cup, we built a streaming media server, with the help of the windows media encoder, and had a workstation per desk that connected and played the stream. Our office then was smaller, and therefore we had less interference with in and outgoing traffic.

Now my first Idea was to have the lab set-up with a streaming media server, and a digital DVB Receiver. Then patch about 5 desks per floor (3 floors) to the lab network. I will still have to see if that is possible, but please, if you have any Ideas…..?