Archive for the ‘Uncategorized’ Category

FOW, running on real server

By farcaller November 3rd, 2008

Today I’ve thought that FOW is mature enough to be tested on my linux hardware, so I’ve got updated Cocotron and built FOW on linux.
I have to say lots of thanks to Johannes Fortmann, who has been answering all my stupid questions about GCC, Obj-C runtime and Cocotron.
Now, it is time to really publish some [...]

GET and POST. Session stuff

By farcaller November 1st, 2008

I’ve just implemented nearly all the GET/POST support code in FOWRequest. New implementaion is working better, faster and more secure. All the thread handlers are now wrapped with @try/@catch so server is not going to die on runtime exceptions anymore.
Now working on sessions implementation. Still considering between memcached and sqlite3, but seems that latter is [...]

Notes on ORM and templates

By farcaller October 20th, 2008

As usual, not much news here, but I’m still working on FOW ;) Here goes the summary of last updates:

Got HTTP server from Google Toolbox. It might be useful for testing the code;
ActiveRecord looked too complex for me. You can use anything you want for your ORM, but seems that there will be only some DB [...]

Servers are not the same

By farcaller September 8th, 2008

Today was the day when I finally stopped tweaking ugly builtin Apache config and installed lighttpd on my OSX. Bad news, I’ve coded rather big part of FOWRequest based on mod_rewrite-specific variables!
It took some time to re-implement old functionality, unit tests are still broken, but now I consider some of the advertised functionality as useless. [...]

It’s working!

By farcaller August 29th, 2008

I’ve got the first completely working code!
Screenshot shows FOW running a simple fastcgi server on OSX with Apache2.
What’s implemented:

lots of FOWRequest stuff
URL resolver
CTemplate wrapper in objective-c
FastCGI server controller

I’ll see if this thing can work in linux/cocotron in the morning.
If somebody is interested, here’s the controller code for the page above:

@implementation Handler
 
- (FOWResponse *)handle:(FOWRequest *)rq
{
FOWResponse *rs [...]

Status update

By farcaller August 22nd, 2008

There wasn’t much activity here for a pretty long time. I’ve been working on several iPhone projects, mastering Objective-C magic. That was a nice time and I have somewhat changed the way I look at Objective-C. Anyways that are good news for FOW.
I’ve got Cocotron building natively on linux without major problems. The only thing [...]

Examining RoR

By farcaller July 6th, 2008

I’ve started coding Ruby on Rails today. This would be my first programming experience in RoR (and in Ruby at all). I have several webapps that I’ve been planning to code in Django, but I’ll give RoR a try to see other way of developing web applications (that might be implemented later in FOW).
Currently what [...]

Regular expressions

By farcaller June 29th, 2008

I wonder, why so nice thing as Cocoa has nothing built in for regular expressions matching. There are various 3rd-party frameworks, and I can still use plain PCRE.
If this was Mac-only project I’d just use RegexKit framework. It looks very nice, and has rich documentation. Bad thing that it is a framework. It might be [...]

Troubles arise

By farcaller June 18th, 2008

The current code is not compilable even under Cocotron. It uses rare, but nice and optimized features of Cocoa.
What that means? In the most simple case: no FOW for Linux. That automatically means no FOW for 99.9% of possible users. Guys that host their stuff on OSX servers already have nice and elegant solutions for [...]

doYouReallyThinkThatSuchNameRocks?

By farcaller June 1st, 2008

While writing a parser for generic queries I’ve discovered a very useful method of NSString named stringByReplacingPercentEscapesUsingEncoding. Yeah, I can agree that such method name fully describes what it does, but geez, the source is so hard to read!
[d setValue:
[[s substringFromIndex:r.location+1] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]
forKey:
[[s substringToIndex:r.location] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]
];