Tuesday, February 27, 2007

brief update

Well i did upgrade to ubuntu and it works fine, not that i use it much, i've failed in my attempt to use it as my primary os

Friday, November 03, 2006

moving to linux

I've been clearing off space from my laptop recently so i can install ubuntu as a dual boot, with a view to using it as my primary os/ home development environment. I'm ready to do it now i just need to pluck up the courage to do it. (historically i've always managed to f-up any sort of os/hardware changes)

I code in c#.net mainly, but i get the impression that the mono project is a bit too beta for me to consider coding with it (although i'd miss all the things you get for free with asp.net)


so if/when i get ubuntu installed i think i'll experiment with java (similar syntax and i used it for a couple of ou courses i did). i've found this site

http://www.javapassion.com/j2ee/

which seems to provide a nice ease into j2ee.

google apps for a domain

signed up to this yesterday during a bored period. the suite is v basic at the moment, email/calendering/google talk and thats about it. but it did get me thinking.

Could a start up really reduce its start up costs using stuff like this?

no need for a mailserver, change your mx record so that you use gmail, use google docs and spreadsheets.

what about other communication mediums? don't want to pay for a phone system? use skypein/skypeout, costs money, but not much and the bonus is, you phone system goes where you go (as long as there is inet access).

For a micro isv or startup these tools do offer as near to zero cost as you could hope to get.

Tuesday, October 24, 2006

ubuntu, it just works

had a play with booting ubuntu from the cd last night. went really well, everything i tried just worked. only issue was american keyboard and the brightness on my laptop screen was set to "burn the fuckers eyes out" tried rdcing to my work pc (windows xp) and that worked fine, although oddly all the l's were converted to j's (jog in rather than login for example) bit weird but still useable.

the original reason i started looking at ubuntu was after readin a couple of articles about amazons elastic cloud (ec3) web services where you can provision linux servers via a webservice. this got my mind racing about possible applications that could be run, but since (at the mo) its only linux based it got me thinking about learning how to use/administrate linux. A while back i had a job that involved admin of apache on some aix servers, never really got into the whole command line thing, but i guess its never too late.

So the plan is to clear some space on my laptop and attempt (gulp) to get ubuntu running a a dual boot, for my home needs the excercise last night proved that i could do nearly 100% of what i use my pc for on linux as opposed to windows web browsing, instant messenging, rdc to work, all work out of the box. the only other thing i do is code. There are obviously numerous options open to me in this area, i mainly code in c# so the mono project on linux looks like a cool option if i want to code c# on linux. the other obvious option (because of its similarities to c#, and portability) is java. If i manage to get a dual boot working, i think getting a dev environment for each of these set up will be the number one priority.

more to come.

Thursday, October 12, 2006

whats in a name?

I've been racking my brain recently for a name for the web ide. my first thought was w.i.d.e.
as in web ide, but thats already taken. then i thought about "collide" (collaborative ide) but al those domains are taken. Last night i was thinking along the lines of using a non word as the name of the app. i was flicking thru "boo hoo" the story of boo.com and read the bit where the swedish entrepeneurs ran an online book seller in sweden called "bokus" which is'nt a swedish word but is spelt nearly like the swedish word for book.
Following this tangent i thought of "coodaa" as the name for the app not quite sure whether i like it yet or not but it definitel has an advantage over all the other names i've thought of in that nearly all the domains are available for it (i guess thats the benefit of making up a word).

Tuesday, October 03, 2006

update

i've been concentrating on sorting out a proper data and business layer for my app and every so often get myself in a muddle. if i have an class called File and a class called Project and i want to add a create a file in a project, should the method be in the File or the Project class.

To start with i put it the method in the File class, but then i changed my mind and put it in Project
I reckon that is right, but its little things like that, that i';ve been fiddling with recently.

Also discovered the ObjectDataSource which i think is really cool. so you can binder a control to a business object and still maintain a tiered structure.

The membership/roles functionality is pretty much sorted and working properly with the asp.net providers has changed my opinion of the new provider model. its perfect what i want to do for this site. quickly and easily add basic membership and roles. However if i ever wanted to query and personalisation info i'd be a bit fooked, but i don't so its perfect.

I'm just going through a hitlist at the moment now users can create a project, add developers to a project, hopefully later on today they'll be able to add files to a project. next i'll need to add delete/archive/view history on files in a project. I haven't quite decided whether to let all develoers add a file to a project or just let the admin do it.

For the main code window the next big thing to do is sort out the file and developer tabs. i plan to have a webservice that returns a collection of file objects and then in javascript create the html for entries in the "file" accordion pane. rather than get bogged down with generating html on the server side. I plan to use a similar approach to this when populating the list of developers code to view.

One big thing i've yet to decide on is how to deal with developers working concurrently on a file
should i implenebnt a check in, check out system where anyone can get a copy but only the person with the file checked out can commit his changes, or should i allow anyone to save a copy of the file and rely on the ability to resurrect and archived file to resolve issues of source being overwritten?

Wednesday, September 13, 2006

collapsible panel

Given the limited real estate on my web ide i was looking for a method to hide sections of content,
for example do you always need to see the list of files in a project?

I've come across this link
http://atlas.asp.net/atlastoolkit/PanelExtenders/CollapsiblePanel.aspx

to an atlas collapsible panel, this could be very useful, especially if i can update the html within the panel using a client side webservice call, which is what i do with standard .net panels at the moment so i can't see it being a problem.

ide

made a small bit of progress of imperceptible progress last night and today basically readin up on the membership and role providers, to a tets solution set up apart from my pet project so i can fiddle around with roles etc.

I was thinking about wrapping the ide page in a loginview control, no0t sure about the whole hardcoding separate role views withint the control. this would be good if you can programmatically say on the load "you can view this, you can't and neither can you", but the stuff i was reading only mentioned declaring the role elements within the loginview control at design time, which would be a bit useless, considering users could be adding new roles all the time, sop any hardcoded roles would quickly become out of date.

Also started implementing some of the database design, the pain (i foresee) is going to be marrying up my schema to the membership (and profile if i use it) schema. we shall see.

Tuesday, September 12, 2006

web ide pet project progress

well i've been making slow but sure progress on my new pet project in my lunch hours.
I've got the first bit of functionality woring pretty much how i want. you can now enter code in pretty much any language i can think of, click a button and it will be higlighted and displayed to you so that you continue editing.

Im pretty happy with this apart from the fact that the fckeditor rich text box that i use seems to be defaulting to a specific size. and no matter how i manipulate the html around it, it won't get any bigger.

I've got most of the layout sorted now, its basically 4 table cells. one for your code, one to display all the other people cwatching you code, one to display the code of someone you have selected from the list of watchers and finaly one to display "other stuff", at the moment this may just be a list of files associated with the project.

Which brings me onto the next thing i'm thinking about, really getting down my db design. i've been thinking it'd be nice if you could have a Project, which could have many files (maybe classes, maybe not) related to it.

i've also been thinking about how the relationships between developers and projects will work. that seems to be a many to many relationship (a developer can work on many projects and a project may have many developers) so it'll need what i call an intermediary table.

But the bit i'm not sure how to implement is the idea of having public and private projects, a developer may start a projects and not care who watches, on the flip side a developer may start up a project and only want specific people to be able to participate on the project.
maybe this is getting into role based territory, if you are authenticated and in a specific role then you can view the project?

but then who assigns the roles? maybe when a developer creates a project they get presented with a list of developers, from that they themselves can assign the roles?

which then moves me onto the another thign i'll have to tackle. i've yet to get to grips with the whole asp.net 2 role/membership/profile providers model. mainly cos i think its a bit wank, in terms of blobfying the data, so you can't write queries against it. but maybe this is the answer for what i need to do.

i think i feel some reading coming on