2007/09/16
IRC [07:59] <partymola> Dossy: ... what are the methods supported by AOLServer? just GET, POST and HEAD?
IRC [07:59] <partymola> isn't there support for PUT & DELETE?
IRC [08:11] <Dossy> not out of the box, n
IRC [08:11] <partymola> oic
IRC [08:11] <partymola> then
IRC [08:11] <partymola> is there a module or something?
IRC [08:11] <Dossy> not sure
IRC [08:12] <partymola> original naviserver had it
IRC [08:12] <Dossy> yes.
IRC [08:12] <partymola> :-m
IRC [08:12] <partymola> thing is tdav module for aolserver implements it
IRC [08:13] <Dossy> actually -- heh:
IRC [08:13] <Dossy> if {[nsv_get _ns_fastpath aolpress]} {
IRC [08:13] <partymola> tdav has a REST working environment
IRC [08:13] <Dossy> ns_register_proc PUT / _ns_publish _ns_put
IRC [08:13] <Dossy> ns_register_proc DELETE / _ns_publish _ns_delete
IRC [08:13] <Dossy> ns_register_proc BROWSE / _ns_publish _ns_browse
IRC [08:13] <Dossy> ns_register_proc MKDIR / _ns_publish _ns_mkdir
IRC [08:13] <Dossy> ns_register_proc OPTIONS / _ns_publish _ns_options
IRC [08:13] <Dossy> }
IRC [08:13] <partymola> where is that piece of code? LOL
IRC [08:13] <Dossy> oh, yeah, tDAV implements WebDAV, so it would implement the other HTTP verbs, too
IRC [08:13] <Dossy> tcl/fastpath.tcl
IRC [08:13] <Dossy> you should read the source--or at least grep through it once in a while :)
IRC [08:14] <partymola> i grep'd... but nsd ;)
IRC [08:15] <Dossy> if you do enable those verbs (PUT, DELETE) make SURE you configure nsperm or implement your own authorization mechanism to prevent any random attempt from succeeding
IRC [08:15] <Dossy> else some script kiddie will come along and pwn your server
IRC [08:16] <partymola> it won't be a public server
IRC [08:16] <partymola> we're working on a software for a company
IRC [08:17] <Dossy> still, better safe than sorry
IRC [08:17] <Dossy> there may be internet worms that propagate via HTTP PUT
IRC [08:18] <Dossy> if you don't secure the server, someone's PC gets infected and pwns the server.
IRC [08:18] <Dossy> your product will be seen as "vulnerable" and there's no reason for that
IRC [08:18] <Dossy> internal software needs to be reasonably secure, because your internal users can be remotely controlled
IRC [08:25] <partymola> don't worry
IRC [08:25] <partymola> there's no browser XD
IRC [08:25] <partymola> it's a wish client that receives put commands from the server
IRC [08:25] <Dossy> there doesn't need to be.
IRC [08:25] <partymola> that communicates via HTTPS
IRC [08:25] <partymola> and with HTTP authentication
IRC [08:25] <Dossy> good.
IRC [08:25] <Dossy> as long as you have some kind of authorization scheme in place, you'll be OK.
IRC [08:25] <partymola> geee... doing this with TCL/TK is damn easy :D
IRC [08:26] <Dossy> except for the HTTPS bit :-)
IRC [08:28] <partymola> ooops... now i realise it can be a lil problem if it doesn't work in windows
IRC [08:28] <partymola> i mean the https part
IRC [08:30] <partymola> http://wiki.tcl.tk/2627 << will try this later
IRC [08:30] <partymola> lunchtime :)
IRC [14:36] <Dossy> :)
IRC [17:49] <partymola> Dossy: it works... incredibily good
IRC [17:49] <partymola> PUT works perfectly
IRC [17:49] <partymola> i have registered procs and adp files with PUT & DELETE , and it works simply fine
IRC [17:50] <partymola> also, did a TK client that communicates with AOLServer via GET, POST, PUT and DELETE... and it simply works wonderfully
IRC [17:51] <partymola> and we've tested the Tk client for AOLServer with OS X, Windows, Linux and BSD
IRC [17:51] <partymola> we're damn happy :)
IRC [18:32] *** holycow joined the chat.
IRC [19:34] <partymola> heya holycow
IRC [19:55] <Dossy> partymola: that's great news. :-)
IRC [19:55] <Dossy> are you reinventing AOLpress? :)
IRC [19:56] <partymola> not really
IRC [19:56] <partymola> it's not for webpage publishing
IRC [19:56] <partymola> it's for desktop app
IRC [19:56] <partymola> aolserver is the data server
IRC [19:56] <partymola> they communicate via HTTPS in a REST way
IRC [19:57] <partymola> being able to communicate via HTTP lets you not to worry about firewalls and such
IRC [19:57] <partymola> it's easy to set-up remote access outside of the organization
IRC [19:58] <partymola> plus we're doing pretty light clients
IRC [19:58] * Dossy nods
IRC [19:58] <Dossy> very cool
IRC [19:58] <partymola> the server sends tcl commands that paint the screen
IRC [19:58] <partymola> Tk rocks :)
IRC [19:58] <Dossy> you can call it SOA :)
IRC [19:59] <partymola> we'll try not to let it grow like mad
IRC [19:59] <partymola> or it'll be a services madness
IRC [19:59] <partymola> http://www.dzone.com/links/service_oriented_architecture_is_your_ticket_to_h.html
IRC [20:00] <partymola> http://thewaronbullshit.com/2007/08/30/soa/ << this is the original link
IRC [20:01] <partymola> we're not working in a SOA architecture just to make lots of light services
IRC [20:02] <partymola> we'll have only 1 service... an AOLServer
IRC [20:02] <partymola> we only want to focus on having a lightweight client that works on several platforms effortlessly
IRC [20:02] <partymola> just to make it agile to access from any place, without needing to use VPNs or anything else
IRC [20:03] <partymola> with any operating system
IRC [20:06] <holycow> evening
IRC [20:07] <partymola> evening, holycow :)
IRC [20:10] <holycow> partymola: what are you guys up to?
IRC [20:10] <Dossy> hey, holycow :)
IRC [20:10] <holycow> hey Dossy :)
IRC [20:12] <holycow> partymola: from skimming what you wrote that sounds like a really cool application of aolserver
IRC [20:14] <partymola> yay
IRC [20:14] <partymola> application server is an aolserver, that's it
IRC [20:14] <partymola> we wanted to go with erlang... but aolserver is just ok, since server is stateless
IRC [20:14] <holycow> now are you guys doing what ... a vnc type thing?
IRC [20:15] <partymola> holycow: we've a very thin client written in TK that connects to the server, and authenticates
IRC [20:15] <partymola> then the server stats sending back Tk commands to draw the interface
IRC [20:15] <holycow> aha, and this is used for monitory aolserver or ?
IRC [20:16] <partymola> no, no, it's just a business management app
IRC [20:16] <partymola> human resources management, and many other things
IRC [20:16] <holycow> and you are writing this from scratch?
IRC [20:16] <holycow> without using a framework?
IRC [20:16] <partymola> of course, as always xD
IRC [20:17] <holycow> how are you handling security and permissioning?
IRC [20:17] <partymola> security: HTTPS
IRC [20:17] <holycow> no no
IRC [20:17] <holycow> per user
IRC [20:17] <partymola> permissioning: HTTP auth
IRC [20:17] <holycow> granularity
IRC [20:17] <holycow> its a forms based app right? how are you managing to setup users, roles, permissions, all of that?
IRC [20:18] <partymola> ah, ok, there can be administrative users
IRC [20:18] <partymola> you login as an admin user, and you're given an interface to admin it
IRC [20:18] <partymola> i don't get what you're asking exactly...
IRC [20:18] <holycow> you would save your self a lot of headaches and time by re-using openacs if you wanted to use aolserver
IRC [20:18] <holycow> sounds like you are reinventing everything from scratch
IRC [20:18] <partymola> no, we don't want web access
IRC [20:18] <holycow> except its over https
IRC [20:19] <partymola> access is not via web
IRC [20:19] <partymola> it's via a desktop app
IRC [20:19] <holycow> adn the client is much harder to upgrade and maintain than a web interface?
IRC [20:19] <partymola> heh
IRC [20:19] <partymola> yes
IRC [20:19] <partymola> i mean
IRC [20:19] <partymola> the client doesn't want web
IRC [20:20] <partymola> face it, html & css alone sucks for serious applications
IRC [20:20] <partymola> i am not speaking about a web 2.0 app
IRC [20:20] <holycow> well thats wrong
IRC [20:20] <holycow> it depends on what type of application
IRC [20:20] <holycow> if you are writing adobe photoshop, yes
IRC [20:20] <partymola> i am speaking about an app that will work in a business that moves tens of millions a year
IRC [20:20] <holycow> if you are writing a forms based application, its an irrelevant statement
IRC [20:20] <partymola> they don't want web
IRC [20:20] <partymola> they want an application that has instant reply
IRC [20:21] <partymola> it must let ppl do number crunching instantly
IRC [20:21] <partymola> it must be as responsible as... excel
IRC [20:21] <holycow> *nod*
IRC [20:22] <holycow> i was just curious :) sounds like the right fit for the right client
IRC [20:23] <partymola> if it works... it's gonna be a big hit, i tell you ;)
IRC [20:23] <holycow> we are building an hr and accounting app on oacs here as well
IRC [20:23] <holycow> mostly porting other open source projects
IRC [20:24] <partymola> nice, nice
IRC [20:24] <holycow> but our clients don't really care if they haveto refresh a page
IRC [20:24] <partymola> how is it going? :)
IRC [20:24] <partymola> well, in our case, we want to make transactions stateless
IRC [20:24] <holycow> slow, we keep on getting distracted by other projects
IRC [20:25] <partymola> since we'll be asked to make it scale up
IRC [20:25] <partymola> and we'll need an array of servers to attend the requests
IRC [20:25] <partymola> and it's easier to make it stateless, than to assign a server to each client, and balance it all
IRC [20:28] <partymola> even if we're doing this focusing on a certain business, we're working to make a product, not a custom development
IRC [20:28] <partymola> so we have a broader focus, you know
IRC [20:28] <holycow> same here
IRC [20:29] <partymola> let's see who wins LOL>>
IRC [20:30] <holycow> we decided to just port existing projects instead of trying to do it from scratch
IRC [20:30] <holycow> and to re-use a framework
IRC [20:30] <holycow> so that way we don't haveto invest time in inventing our own framework
IRC [20:31] <holycow> nor either of the applicatios
IRC [20:31] <holycow> applications even
IRC [20:31] <holycow> however the goal is to gain granular security from the framework and have it shared accross both applications, and othen of course others
IRC [20:32] <holycow> in effect getting a mini erp for the cost of simply porting the code
IRC [20:33] <holycow> and requisite debugging
IRC [20:33] <partymola> in our case
IRC [20:33] <partymola> we've to control everything
IRC [20:33] <partymola> because we've to get some certifications
IRC [20:33] <partymola> that's a requisite of the market we're working for
IRC [20:34] <partymola> so we've to have a fine control over everything
IRC [20:34] <partymola> and, well, we don't trust very much most of the software out there
IRC [20:34] <partymola> so we better do it ourselves, than starting to glue software
IRC [20:38] <holycow> yeah we are completely opposite of that point of view
IRC [20:38] <holycow> we trust in our selves to be able to tell what is good and what isn't
IRC [20:38] <holycow> we have never seen a piece of software entirely in one category or another
IRC [20:38] <holycow> ultimately its an engineering question for us
IRC [20:39] <holycow> can this be re-used, is it done in a way that can be reconstituted
IRC [20:39] <holycow> what can we learn from their mistakes, what can we learn from their success
IRC [20:39] <holycow> what can we throw away, what we keep
IRC [20:39] <holycow> a lot of time of course a total re-write is in order, other times you just walk away
IRC [20:39] <partymola> here we keep very few things ;)
IRC [20:40] <holycow> sometimes you can find a project to re-use
IRC [20:40] <holycow> however
IRC [20:40] <holycow> we NEVER believe in starting from scratch without having vast amounts of expeirence
IRC [20:40] <holycow> OR
IRC [20:40] <holycow> being prepared to pay for that experience our selves
IRC [20:40] <partymola> sometimes u have to simply do it
IRC [20:40] <holycow> in the past we have found one of two scenarios is usually resultant:
IRC [20:40] <partymola> like today
IRC [20:40] <holycow> a) either we pay through the nose to gain the experience in a field we are not experts in
IRC [20:40] <holycow> or
IRC [20:41] <holycow> b) the client pays for that experience
IRC [20:41] <holycow> that is also why its hard to knock an incumbent piece of software, say like accpac or hr software, even with all their faults off of the ladder
IRC [20:41] <holycow> and sometimes you just haveto do it from scratch, yes
IRC [20:41] <partymola> today we were looking for a tcl library for http that let us do more than GET, POST and HEAD. We needed PUT and DELETE... but the http library that comes with TCL has not support for it... so we had to do our own... actually it's less than 100 lines code, and it took like 2 hours to be written... if we had worked on tcl's http library, it'd have take days for sure...
IRC [20:42] <holycow> how come you didn't submit that as a patch for the tcl http library?
IRC [20:43] <partymola> we've now worked over tcl's http library
IRC [20:43] <partymola> it's all bloated
IRC [20:43] <partymola> a single function has more than 200 lines of code
IRC [20:43] <holycow> heh
IRC [20:43] <partymola> there's no way i am going to lose time with it
IRC [20:43] <partymola> i needed something simpler
IRC [20:48] <holycow> that makes sense
IRC [20:48] <holycow> *nod*
IRC [20:48] <holycow> how would you improve tcls http library now that you had a chance to go over it?
IRC [20:51] <partymola> refactor it
IRC [20:51] <partymola> to make it much more understandable
IRC [20:51] <partymola> and give it full HTTP/1.1 support
IRC [20:51] <holycow> any thoughts on how much work that might be?
IRC [20:51] <partymola> maybe 5 days of work
IRC [20:51] <holycow> it doesn't have 1.1 support?
IRC [20:51] <partymola> nope
IRC [20:51] <holycow> oh heh, i would say you definately made the right choice then :)
IRC [20:51] <partymola> it has not even full 1.0 lol
IRC [20:51] <partymola> no PUT
IRC [20:51] <partymola> no DELETE
IRC [20:52] <partymola> one of the last things added was keep-alive
IRC [20:52] <holycow> yeah i caught that... thats bizarre
IRC [20:52] <holycow> sounds like someone started farting around and just stopped
IRC [20:52] <partymola> yes
IRC [20:52] <partymola> to fix it, probably the API should be changed
IRC [20:52] <holycow> if you guys decide to refactor it somewhere along the way, let me know
IRC [20:52] <partymola> it looks like it's been evolving by iterations
IRC [20:52] <holycow> perhaps we can help test or something
IRC [20:53] <partymola> but the design itself is basically broken
IRC [20:53] <partymola> i don't think we'll work on http's tcl library
IRC [20:53] <partymola> if we come up to something... it'll be a replacement for it
IRC [20:53] <partymola> holycow: if you want to take a look... you can see the http.tcl file
IRC [20:54] <partymola> concretely, the geturl procedure...
IRC [20:54] <partymola> it decides itself if it has to do a POST, GET or HEAD depending on the parameters you pass... it's so bizarre...
IRC [20:55] <holycow> heh
IRC [20:55] <holycow> well to not let my comments seem to harsh ...
IRC [20:55] <holycow> ... let me also say i think any outside perspective like what you guys are bringing is valuable as well
IRC [20:56] <holycow> when your nda allows, someday, i'd love to see what you guys come up with
IRC [20:56] <partymola> we've no nda
IRC [20:56] <partymola> it's just that i don't think it's ready to be released for a broader public
IRC [20:57] <partymola> it works fine for myself, you know
IRC [20:57] <partymola> since my requirements are very specific
IRC [20:57] <holycow> *nod* totaly undrstood
IRC [20:57] <partymola> anyways, it may end up like a wrapper about tcl's http library, or something
IRC [20:57] <partymola> time will tell
IRC [20:58] <holycow> ideally a piece of crap is replaced with a better smelling piece of crap
IRC [20:58] <partymola> anyways, i have to tell i program in spanish... and put spanish comments... ;)
IRC [20:58] <holycow> :)
IRC [20:58] <holycow> hehe
IRC [20:58] <holycow> i will be grepping for 'puta madre' so be careful
IRC [20:58] <partymola> ha ha ha ha
IRC [20:59] <partymola> i write 'mierda' much more often
IRC [20:59] <holycow> it will take us a good while to get anything usefull out
IRC [20:59] <holycow> so
IRC [20:59] <holycow> when its ready i'd be happy to share
IRC [21:00] <partymola> nice :)
IRC [21:01] <holycow> you are right at your basic http opinion though
IRC [21:01] <holycow> we are using it for what it wasn't designed to do
IRC [21:01] <holycow> would be nice to have some sort of rich widgetset to sit at the client end
IRC [21:01] <partymola> heh
IRC [21:01] <holycow> maybe use opendocument as the standard
IRC [21:02] <holycow> document type anyway
IRC [21:03] <partymola> i am lost
IRC [21:03] <partymola> but it's cuz i am pretty sleepy
IRC [21:03] <partymola> so i better go to bed
IRC [21:03] <partymola> today's been a loong day
IRC [21:03] <holycow> well instead of http definind document layout and structure
IRC [21:03] <partymola> (who said ppl can't work in sundays? lol)
IRC [21:03] <holycow> one would replace that with the opendocument standard that is now the oasis standard
IRC [21:03] <partymola> well
IRC [21:04] <partymola> OS X interface is rendered PDF-like, right?
IRC [21:04] <holycow> that would solve most of the static document layout requirements
IRC [21:04] <partymola> well, our solution to that has been sending tk commands to app client
IRC [21:05] <holycow> it's pretty much what most .net devs do too when html doesn't meet the bar
IRC [21:06] <holycow> it's not the wrong way to solve the problem, i understand why you are doing that
IRC [21:06] <holycow> just making a more general comment about html and what might be a possible next real step
IRC [21:06] <partymola> there's nothing as interactive as a classical desktop application... and i don't think that'll change in the short-term
IRC [21:07] <holycow> thats my point
IRC [21:07] <holycow> thats only because of hmtl
IRC [21:07] <partymola> ajax is a pain in the ass to program
IRC [21:07] <holycow> throw that out and replace it with a rich document standard like opendocument that allows for complex and easy layouts via various ide's
IRC [21:07] <partymola> and still with ajax, it's slow, there are problems with different browsers, and it's not as interactive as desktop
IRC [21:07] <partymola> anyways, layout is not everything
IRC [21:07] <holycow> ajax is a tacked on solution, its not a real solution
IRC [21:08] <holycow> no layout is just the presentation layer
IRC [21:08] <holycow> you need to wrap other things around that to start to get that native application feel
IRC [21:08] <partymola> sadly, from my experience, the good presentation that people like is... good reports on paper
IRC [21:08] <partymola> they don't care about screen representation very much
IRC [21:09] <holycow> the difference between a tcl native client over http and mozilla over http is negligable except for html
IRC [21:09] <partymola> well, with native client i can do things like combo-boxes with auto-search cababilities easier
IRC [21:09] <holycow> *blink*
IRC [21:09] <partymola> and hard computations in the client side, that with ajax are too slow ;P
IRC [21:10] <holycow> you do know what open document is right?
IRC [21:10] <partymola> yes
IRC [21:10] <holycow> alrighty, just checking
IRC [21:10] <holycow> :)
IRC [21:10] <partymola> i have no choice other than knowing it
IRC [21:10] <partymola> i use Linux/BSD 98% of my time ;)
IRC [21:10] <holycow> yeah, the part about where the logic is located, thats a tough problem
IRC [21:11] <holycow> mostly because its solution dependent
IRC [21:11] <holycow> here we have moved TOTALLY away from client software that has logic in the client beyond the bare minimum
IRC [21:11] <partymola> yes, client is only for inputting and outputting information
IRC [21:11] <holycow> we completely refuse to purchase or develop any software that behaves that way for FORMS based business applications ... but that is just a choice
IRC [21:11] <partymola> big calculations are in the server
IRC [21:12] <holycow> one can make a case for client side logic too, depending on task
IRC [21:13] <partymola> anyways, about logic... in some businesses applications... you know the real experts work with excel, right?
IRC [21:13] <partymola> they've excellent excel sheets out there that do the calculations
IRC [21:13] <holycow> our point of view is that, that is an artifact of a bygone era of computing
IRC [21:13] <holycow> its the wrong way to do things
IRC [21:13] <partymola> you just can open them in a openoffice, and connect to them from aolserver... you fill in the fields in the excel from aolserver, and read the results
IRC [21:14] <partymola> and let the logic to the experts, with the tools they use
IRC [21:14] <partymola> it has its problems, but... it can work in some cases
IRC [21:14] <holycow> absolutely
IRC [21:14] <holycow> thats why i said opendocument
IRC [21:15] <holycow> it is a good candidate to replace html
IRC [21:15] <holycow> because you can get the data over http/s or have the logic locally
IRC [21:15] <holycow> depeding on your needs
IRC [21:16] <partymola> nothing will move html
IRC [21:16] <partymola> and if something moves it... it'll be a simpler thing
IRC [21:16] <partymola> opendocument is just too complex
IRC [21:16] <holycow> *blink*
IRC [21:16] <holycow> lol you are a strange fellow
IRC [21:16] <holycow> talking to you is like talking to jello
IRC [21:16] <holycow> whenever i say one thing you dart in the other direction
IRC [21:16] <holycow> :)
IRC [21:16] <holycow> for no particular reason
IRC [21:17] <partymola> ha ha ha
IRC [21:17] <holycow> right, html is a w3c standard. eventually older versions of html will get deprecated
IRC [21:18] <holycow> opendocument may not be the exact answer to rich forms based applications, but we will inevitably haveto go down a path like that
IRC [21:18] <partymola> i don't think so
IRC [21:18] <partymola> there's not a neccesity
IRC [21:18] <holycow> right, no need, except
IRC [21:18] <partymola> i think the web is dead
IRC [21:18] <holycow> that you are right now reinventing your own client
IRC [21:19] <partymola> we'll be returning to desktop apps
IRC [21:19] <holycow> with your own data format
IRC [21:19] <holycow> and your needs
IRC [21:19] <holycow> thats wrong
IRC [21:19] <holycow> html is aging
IRC [21:19] <holycow> it will be replaced by a new richer presentation format
IRC [21:19] <partymola> html is aging? why?
IRC [21:19] <partymola> are laws of thermodynamics aging too?
IRC [21:20] <holycow> and that will be wrapped around by rich ides and browsers
IRC [21:20] <holycow> so instead of just serving up a .xhtml version of your site
IRC [21:20] <holycow> you will tick off the .opendocument options on your webserver
IRC [21:20] <holycow> .opendocument or maybe something else, but it will be must surely richer
IRC [21:21] <partymola> i don't know what kind of "richness" you're speaking about
IRC [21:22] <holycow> should i even bother answering this? seriously, is it just the meaning of the word 'rich' that is maybe being lost in translation?
IRC [21:22] <partymola> i think it's just a matter that i am very tired
IRC [21:22] <partymola> don't worry
IRC [21:23] <partymola> we can continue speaking some other day
IRC [21:23] <holycow> :) ttyl
IRC [21:23] <partymola> i am even surprised i can keep writing in english lol
IRC [21:23] <partymola> good night, holycow :)