Click here to Skip to main content

Keith Barrow - Professional Profile

Summary

13,063
Author
24,414
Authority
71,071
Debator
695
Editor
197
Enquirer
7,882
Organiser
3,543
Participant
I Graduated in Natural Sciences (Chemistry & Physics)from Durham University, where I did not cover myself with glory, but did fill, and often cover, myself with beer.
 
I Qualified as a secondary school teacher, taught for a while as a supply teacher. I hated teaching. I tried working as a techhie but kept getting promoted to IT Trainer, courtesy of my teaching experience, which I disliked for similar reasons. I spent some time working out what else I could do and reducing beer intake.
 
I Realised that I should work as a programmer, having enjoyed it a hobby since I was a nipper in the halcyon days of the Sinclair Spectrum (48k, Rubber Keyboard). Spent two weeks working out why I didn't think of this originally, instead of starting my dull-as-ditchwater Chemistry degree 8 years earlier. Had a beer to celebrate.
 
I Graduated in 2001 with an MSc from Newcastle Uni in Comp Sci. Did cover myself with glory, and drank some beer.
 
.Netting ever since, and loving it. Though I have largely given up beer due to not being able to hack the pace like I used to.
 
I was born, brought up, and have lived most of my life near Newcastle. In a fit of temporary insanity I moved to Amman, in my wife's homeland of Jordan, but made it back safely to the UK without any extra holes being made in my person by bullets. To be fair, Jordan is pretty safe, if you discount the roads.
 
Visit Jordan if you can by the way, the landscape is beautiful and varied, the food excellent and the people the friendliest on earth, after Geordies naturally Smile | :) .
Member since Wednesday, June 25, 2003 (9 years, 11 months)

  

Contributions

Articles 7 (Legend)
Tech Blogs 0
Messages 6,267 (Master)
Q&A Questions 1
Q&A Answers 403
Tips/Tricks 3
Comments 641

Links

Reputation

For more information on Reputation please see the FAQ.

Privileges

Members need to achieve at least one of the given member levels in the given reputation categories in order to perform a given action. For example, to store personal files in your account area you will need to achieve Platinum level in either the Author or Authority category. The "If Owner" column means that owners of an item automatically have the privilege, and the given member types also gain the privilege regardless of their reputation level.

ActionAuthorAuthorityDebatorEditorEnquirerOrganiserParticipantIf OwnerMember Types
Have no restrictions on voting frequencysilversilversilversilverAdmin
Store personal files in your account areaplatinumplatinumSitebuilder, Subeditor, Supporter, Editor, Staff
Have live hyperlinks in your biographybronzebronzebronzebronzebronzebronzesilverSubeditor, Protector, Editor, Staff, Admin
Edit a Question in Q&AsilversilversilversilverYesSubeditor, Protector, Editor, Admin
Edit an Answer in Q&AsilversilversilversilverYesSubeditor, Protector, Editor, Admin
Delete a Question in Q&AYesSubeditor, Protector, Editor, Admin
Delete an Answer in Q&AYesSubeditor, Protector, Editor, Admin
Report an Articlesilversilversilversilver
Approve/Disapprove a pending ArticlegoldgoldgoldgoldSubeditor, Mentor, Protector, Editor, Staff, Admin
Edit other members' articlesSubeditor, Protector, Editor, Admin
Create an article without requiring moderationplatinumSubeditor, Mentor, Protector, Editor, Staff, Admin
Report a forum messagesilversilverbronzeProtector, Editor, Admin
Create a new tagsilversilversilversilverAdmin
Modify a tagsilversilversilversilverAdmin

Actions with a green tick can be performed by this member.


 
You must Sign In to use this message board.
Search this forum  
GeneralIt Builds!!!!!! Pin
Wednesday, May 18, 2011 2:03pm by Keith Barrow
After only 5 days and two late-night sessions (3am in my TimeZone now) our website finally builds. It doesn't necessarily work, but it builds.
Early indications are not good: Almost evey file "download" runs through an HTTP handler registered as and axd. which "decodes" via a simple substitution cipher which only substitutes a-Z, worse if a --> q, A-->Q. Here is our path to our Arabic the css file:
 
ResourceManager.axd?file=IoqrpYqfbo_pr&type=8&path=~/Yqfbo
 
OK, the first thing is the path: we can happily guess that's Yqfbo = Style. The site is also bilingual, so _pr = _ar
start:
 
yqfbopr
stylear
 
IoqrpYqfbo_pr
?etraStyle_ar
 
The university is Petra so I = P
 
abcdefghijklmnopqrstuvwxyz
?l???y??p?????eatr??????s?
 
About one third of the alphabet without any real effort, on one path alone. Normally I wouldn't let this sort of information out, but we are not securing anything important this way, just "encoding" paths. This is totally brain-damaged, it is sucking perfomance and we wouldn't lose anything by just providing URLS, and the generated paths are longer because of the need to prefix with the name of the Resource Manager. Worse, it is near impossible for the developers to work out WTF is happening.

 
RantWhy Our Code Base Sucks Today II Pin
Friday, May 13, 2011 7:44am by Keith Barrow
It looks like we've had the cowboys in. I took our live website (did I mention, we develop against live?) and tried to get the solution to build. So far I've cleared literally 1000s of build errors, most due to copy-and-paste of aspx, leaving two UIs pointing at the same code behind file, naturally only one will work as the other references unspecfied variables. It has taken be a day an a half to clear that. Now I've put it into a proper web application, I'm getting a second tranche of errors: no namespacing in the original means duplicate classes. Now I've found Governance.aspx.cs contains a class called "About_Mission", we also have an About_Mission page. Currently the number of errors stands at 278, but I doubt this is the real figure. Worse, I can't automate the process as nothing is consistent.
Buck obviously thought cut and paste is good (hence my problems), whereas real code-reuse is bad, about 70% of the stuff he copied could've been put into a base class. We [currently] use url parameters for pretty much everything, but no UrlParameter class to manage it, so the few parameters we do use are store as magic srtings everywhere in our code-base. I suppose I should be impressed our site works as well as it should.

 
GeneralWhoa - 2 Months and I have TFS Server! Pin
Thursday, May 5, 2011 1:49am by Keith Barrow
Normally I'd be ashamed at this rate of progress. Here, getting this sorted is quickly as I have is a major achievement. The main obstacles I've faced are the result of cost: IT equipment here is expensive, there is a 16% tax (even for businesses, where the equipment is essential). This means there is administrative burden getting what, in the UK, would be a low-ish spec'd server that could almost come out of petty cash. Luckily a bit of cajoling has yielded results. At least I'm getting a sense of having managed something.
 
Once I got the server (with a base Windows 2008 server R2) it was all set up within a 3 days. I still need to get some admin accounts set up on the domain, chiefly for Sharepoint. Doubtless there will be other problems, especially around security, but we are up and running.
 
The biggest problem from the software was getting the SCRUM Process template in place. There is nothing wrong with the template itself, I just found the process of getting it installed so I could actually use it a bit, erm, sub-optimal. The main fault lies in the fact that once installed, it does not appear on the templates list when creating a new TFS project. To do this you have to upload the template first, even though I ran the installer on the TFS server. It could be a case of RTFM, but a) who does that? b) the process itself could be more streamlined in the Visual Studio UI IMO, a simple list of installed but not uploaded templates would be useful. Full instructions here[^] and to keep Bob happy the team seems to be Canadian!
 
All [Ha!] I need do now is get our current mish-mash website into a solution that builds and upload it before starting the MVC-based re-write. I also have to figure out a migration (or in our case migrainetion) strategy for the site which has no discernible structure or rational design, this isn't helped by the fact that this is the first time I've migrated a website. Oh well, I like a challenge.

 
GeneralA new TLA* for the masses [modified] Pin
Sunday, March 20, 2011 5:03am by Keith Barrow
I've been looking at a couple of websites today and they require a whole new term BSQ (Bull-Sh*t Quotient). I won't name them (they belong to a member here) and frankly I'm amazed at the levels of contained therein. Samples include:
 
  • World Data Cube = Space - Time + Enterprise Dimensions
  • "To Enable the Architecture of fractally intelligent systems"
  • If you don't evolve someone else will
  • A "graph" With the x-axis: "Execution" (three levels: "Robust", "Impact", "Sublime"),the y-axis: "Thought" (three levels: "Inquiry", "Imagination", "Effervescence"), and a line y=x labelled "vision"
 
Frankly each page was at the high end of the BSQ. I'm still not sure whether it was an Software Engineering site or for a "science based" cult like cosmic ordering. Better yet, this "enterprise" doesn't appear to want to sully its site with words, so all the text is in GIF files, so I'm pretty certain you won't be able to find it. The guy in charge could be a way out there genius, but I won't lose any sleep worrying about it. It bothers me that such people can thrive in our industry, just getting away with it through smoke, mirrors and a large dose of flannel.
 
Talking about smoke and mirrors, my website campaign at work it proceeding at a pace, well, a slow place. I've now prototyped an initial page layout and got a CSS "fly-out" menu system working to replace the Google-unfriendly/ Cross Browser incompatible javascript abomination we have now. The other problem we are having is with our LTR and CSS, I wish we had "float:start" and "float:end" as opposed to floating left and right, that which make more symantic sense IMO anyway. The actual solution in our case (we will be using resx files) was to define a "Layout" value in our Common.resx file, which defaults to "english" and has the value "arabic" in Common.ar.resx. Then, using the defult MVC syntax we can do the following:
 

<whatever class="<%=  Foo.Common.Layout %>">
 
I've become a little rusty on the DHTML front, the last few years have been a mix of WCF, WPF and Winforms, but I'm getting back into it. There are lots of useful new toys HTML 5, but I don't dare risk using them here, I'm even worried about dropping IE6 support so soon. Pity, it would make writing the site much easier.
 

* Three Letter Acronym.

GeneralRe: A new TLA* for the masses PinmemberDaveAuld31-Mar-11 3:36 
GeneralRe: A new TLA* for the masses PinmentorKeith Barrow31-Mar-11 4:18 
 
GeneralWhy our code base sucks Pin
Friday, March 18, 2011 5:44am by Keith Barrow
I've inherited a website from some bloke, lets call him Buck (pronounced Bu-huh-ck) who started the original site way back. He has written a set of Http handlers, any superficial attempt to remove them results in the whole site going down, there is heavy (and unecessary) dependancy on Buck's stuff. Our website regularly craps-out, largely due to these handlers. Worse we don't log errors (or anything) anywhere, just redirect to a login screen so we have no clue what is going on, and no bugs are reported because no error screen ever appears.
 
Anyhoo I'm currently figuring out what's what, so I start to look at our code. To give him his due, Buck has implemented IHttpHandler, and ProcessRequest so it builds. For japes I run the solution through the code analysis tool in VS2010. ProcesRequest is 344 lines long, has a cyclomatic complexity of 177 and a Maintainability index of 0. Yes 0. The thing is a knot of nested if statements, regions (helpfully in place of methods and sometimes classes).
 
This is all just the tip of the iceberg, I feel a re-write coming on. At least the site builds (it didn't last week) and we are half-way to getting TFS to replace our current source code repository. Which is one of the dev machines, a guy (who left) to merge the changes and a USB key to transfer the files.

 
GeneralNew Job "Web Team Leader" Pin
Monday, March 14, 2011 10:07am by Keith Barrow
Same job, just less impressive title. I wanted "Master of the Universe" but by the power of Greyskull they wouldn't give it to me (was it just me or did that cartoon have heavily worrying fascist undertones?). My intended regular log posts fell by the wayside at the first hurdle. Soon after I started I got mired in trying out MVC as an option in our website, writing a proposal determine some kind of strategy and development process. Oh and a little later it became obvious that my wife needed a caesarian, so I'm now the proud father of a little chap called Adam. My wife is well too.
 
MVC3 is exercising most of my time, MS re-jigged it heavily, I tried V1 and found it unuasable. MVC is much better now, but we have a need for multi-lingual support. The URL strategy we will follow is largely that of MSDN: http://hostname/culture-identifier/Whatever/Whatever getting this to work to a long time and research, there are few multilingual resources out there for MVC the best ones I found being:
 
http://adamyan.blogspot.com/[^] Which breaks down the problem of routing and switching the UI and ASPNET MVC Localization[^] which helps with getting resx files to work with the views. Our solution borrows from both of these, and addresses a extra requiements I think we need. I might write an article, if I get the time between nappy feeds. Oh and this[^] is invaluable if you want to do MVC any amopunt of MVC work.

 
GeneralNew Job - "Web Manager" Pin
Monday, February 7, 2011 1:58am by Keith Barrow
I've decided to start blogging here, who knows, someone of you might find it, and they might even find it useful. Hopefully.
 
I'm in the process of re-arrangeing how our university website is developed, so I'm in charge of a very small web-team now. I've a reasonably clear idea of what I think needs to be done, and how I should start. Let's see how long that lasts. Task 1 is to get to grips with the politics of the situation, and figure out how things are done in a totally different culture to the one I grew up in.

GeneralRe: New Job - "Web Manager" PinmemberAli Al Omairi(Abu AlHassan)26-Feb-11 3:18 
 
GeneralPlease leave message after the tone [modified] Pin
Tuesday, January 4, 2011 7:57am by Keith Barrow
Beeeeeeep.


modified 11-Oct-11 7:31am.

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   


Advertise | Privacy | Mobile
Web02 | 2.6.130619.1 | Last Updated 20 Jun 2013
Copyright © CodeProject, 1999-2013
All Rights Reserved. Terms of Use
Layout: fixed | fluid