|
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.
|
|
|
|
|
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.
|
|
|
|
|
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.
|
|
|
|
|
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.
|
|
|
|
|
Keith Barrow wrote: A "graph" With the x-axis: "Execution" (three levels: "Robust", "Impact", "Sublime"),the x-axis: "Thought" (three levels: "Inquiry", "Imagination", "Effervescence"), and a line y=x labelled "vision"
I don't think you mean to have 2 x-axis do you now? See someone is paying attention! (oh and the line before, should that not be don't not den't )
|
|
|
|
|
Cripes. I didn't think anyone would bother to read any of this, let alone take notice. I add stuff here so I can remember what I did over the last few days.
|
|
|
|
|
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.
|
|
|
|
|
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.
|
|
|
|
|
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.
|
|
|
|
|
Hi Keith;
congratulations for your new job, wish you luck
Help people,so poeple can help you.
|
|
|
|
|
Beeeeeeep.
modified 11-Oct-11 7:31am.
|
|
|
|
|