WebKit Is Usable By End Users?

by Jon Davis 3. May 2008 18:20

I've been hearing a lot about WebKit being on the bleeding edge of staying up-to-date with performance and passing various tests like ACID 3. I was confused and concerned, though, because I had thought WebKit was only available to developers as a set of components (DLLs) and was not actually usable by end users.

I was sort of right, but mostly wrong. WebKit's nightly build, which is downloadable, runs on top of Safari (from a user perspective, that is .. technicaly, Safari sits on top of WebKit), replacing Safari's rendering engine with the latest "new and improved". After Safari 3.1 is fully installed, just download the latest nightly build of WebKit, run the batch file and go. (There were two batch files, I ran run-drosera.cmd and then I added a shortcut to run-nightly-webkit.cmd to my Quick Launch toolbar and changed the icon.)  WebKit does not kill off the official Safari renderer when Safari is launched in its normal fashion, it only overrides its renderer when launched from WebKit's .bat file.

Now I'm starting to think that Safari on the latest WebKit is the best browser. *gasp* Who'da thunk?

Currently rated 2.5 by 2 people

  • Currently 2.5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Open Source | General Technology | Computers and Internet | Web Development

MVC On The Client In Javascript

by Jon Davis 1. April 2008 04:30

I stumbled across this over the weekend.

http://javascriptmvc.com/

I was actually very surprised by how closely it resembles what we've been working on at the office. Ours uses a controller to manage and control events and event propogation, track "view objects" (we call 'em "client controls" for drag-and-drop support in Visual Web Developer) and manage AJAX calls. And we've spec'd out to use RESTful URIs to manage data model retrieval and callbacks, and these are cacheable using Google Gears, Flash storage, or *shrug* cookies.

Theirs has a few additional features, though, some of which I think we can glean from, like:

  • script librarian ("Include"), which we don't need but I think we could accomplish using something like JSLoader
  • a complete ActiveRecord-like modeling pattern
  • a complete ASP-like templating system that executes on the client
  • "everything is a plug-in" philosophy

I like what I see, although our own framework goes further as it is built with ASP.NET, ASP.NET MVC, Visual Studio, and Expression Web all in mind. With ours, we enable our web designer, who is not an engineer, to create a complete, non-Flash RIA web pages without coding. Using Expression Web or Visual Web Developer, he can click on one of our controls in the Toolbox, drag it out to the page, absolutely position it, stylize it, give it a data source URI, and have it subscribe to other controls' events (think Flash video player, responding to the events of media playback controls). The entire multi-page web site will support executing in the rich execution environment of a single-page RIA application with a seamless user experience. And since the framework is not done in Flash (although Flash "client controls" are supported), it will support continuous extensions using the wonderfully universal languages of HTML and Javascript, both at design-time (creating new controls, customizing existing controls) and at runtime (RESTful fetches of web content, dynamic execution of JSON models, etc).

In some ways, ours is looking like http://www.wavemaker.com/, except that WaveMaker is based on Java and dojo, and the designer experience is in-page (which is way too much support overhead--why reinvent the designer when Visual Studio / Expression Web can do the job on its own?).

But I'd certainly recommend Javascript MVC (JavascriptMVC.com) as a skeleton foundation framework for someone to roll their own framework. We were thinking about open-sourcing our client bits once we are done with our prototype, but I think Javascript MVC comes close enough that it would do just as well to recommend that one instead. Mind you, I have never used it, I'm only suggesting it based on what I'm seeing at their web site.

kick it on DotNetKicks.com

XHTMLJS Moved To CodePlex

by Jon Davis 28. March 2008 00:24

XHTMLJS has a new home on CodePlex!

http://www.codeplex.com/xhtmljs

Would be nice to get some community support (i.e. feedback, bug reports, code editors) going.

ASP.NET MVC Framework Source Code Released

by Jon Davis 25. March 2008 10:22

Microsoft released their beta source code for ASP.NET MVC.

http://www.codeplex.com/aspnet

What took me by surprise as I noticed the .zip file was just called "aspnet-###.zip" (where ### was a version), which made me wonder, what, is Microsoft going in the direction of moving ASP.NET itself to the open source community? I suppose to some extent that is already the case, although I wonder if WebForms' code will ever see the light of day.

Not that we want it or anything. (j/k.)

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Open Source | Web Development

XHTMLJS: Updated to v0.3

by Jon Davis 22. March 2008 23:17

I've updated XHTMLJS to version 0.3.

http://cachefile.net/scripts/xhtmljs/0.3/

Try the XHTML editor.

This implements the full strict tagset listed at:

http://www.htmldog.com/reference/htmltags/

It still has some flaws, but this mainly resolves what I observed previously, "a few more failures beyond indentation, namely some XHTML-accepted tags (like <input>) are still going missing in strict mode. The Editor should allow for the de-toggling of strict mode, and IMO I think enabling strict mode for the jQuery extension was a mistake. Also, plain-text '>' (&gt; in markup) is not outputting as '&gt;' but as '>'. "

There are still indentation bugs and missing event handlers, among a few other glitches, but this is an important milestone.

UPDATE: The editor itself had a bug I just fixed (kept the 0.3 version designation) where it would only XHTMLize the first node entered. This required no change to xhtml.js.

kick it on DotNetKicks.com

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , ,

Pet Projects | Open Source | Web Development

Introducing jqalert - The jQuery-empowered alert() replacement

by Jon Davis 22. March 2008 16:59

I'm releasing a beta build of something I've been working on called jqalert. It's basically a nice, skinnable modal dialog box that defaults to have a certain "fade-in" feel I wanted to have.

Here's the current project URL:

http://www.jondavis.net/codeprojects/jqalert/  

.. or on cachefile:

http://cachefile.net/scripts/jquery/plugins/jqalert/0.9/

I built this having been inspired by a few other similar libraries out there, including:

What sets jqalert apart is that it is a) specifically an alert() replacement, b) prefab'd to be functionally comparable to Visual Basic's MsgBox, which allows the user to set the title and the icon (and the buttons, too, but jqalert currently only supports OK), while c) also adding a lot of customizeability.

What does "specifically an alert() replacement" really mean, when other tools do the same basic thing? It's about the execution...

  • As quick and simple to use as possible: jqalert(message); or jqalert(message, title);
  • Predictable "windowing" appearance; universally recognizeable.
  • You get a titlebar.
  • You can drag the alert window around with the titlebar, for those "emergencies" where you might need to peek back behind the alert window, without closing out the message. 
  • You get an OK button.
  • The OK button claims focus, so that you can close it by just hitting spacebar or enter.
  • The OK button reclaims focus if it loses focus by clicking elsewhere in the alert window.
  • Modality blocks UI.

kick it on DotNetKicks.com

Currently rated 3.4 by 5 people

  • Currently 3.4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , ,

Pet Projects | Open Source | Computers and Internet | Web Development

Open Source Operating Systems Written In C#

by Jon Davis 6. March 2008 10:44

Over at http://www.codeplex.com/singularity I came across mention of these...

Cool! I'll have to poke at these.

Singularity Now Open To The Public

by Jon Davis 5. March 2008 00:49

Nifty.

Full source code and Virtual PC setup instructions available now at http://codeplex.com/singularity!

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Microsoft Windows | Open Source | Software Development

Virtual Tarball - Draft 3

by Jon Davis 3. March 2008 03:16

I finally got around to kicking the tires of my "virtual tarball" idea, which is basically an XML document that consists of HTML-renderable <ul> / <li> tags that describe the contents of an Internet-based directory structure. This allows a single URL to be used to fetch an entire set of files by using a single list of hyperlinks.

I prototyped this on the server side at cachefile.net using a REST-like approach. Basically, one would simply need to append the path of a known cached directory at cachefile.net to the following URL:

http://cachefile.net/svc/mrr/ [+ known path from root]

For example:

http://cachefile.net/svc/mrr/scripts/OpenAjax/

This would output the contents of the directory at http://cachefile.net/scripts/OpenAjax/ in XML / <li> format, with hyperlinks.

 

<div class="mrr">
    <label>
        Index of <span class="mrrbase">http://cachefile.net/scripts/OpenAjax/</span>
    </label>
    <ul class="mrrparent">
        <li>
            <a href="../">Parent</a>
        </li>
    </ul>
    <!--
        This is a mrr ("mirror") file, also a.k.a. a "virtual tarball".
        For more information, see
http://www.jondavis.net/blog/?tag=/virtual%20tarball
        -->
    <ul class="mrrdirlist">
        <li class="mrrdir">
            <a href="hub">hub</a>
            <ul class="mrrdirlist">
                <li class="mrrdir">
                    <a href="hub/0.6">0.6</a>
                    <ul class="mrrdirlist">
                        <li class="mrrdir">
                            <a href="hub/0.6/release">release</a>
                            <ul class="mrrdirlist">
                                <li class="mrrfile">
                                    <a href="hub/0.6/release/OpenAjax.js">OpenAjax.js</a>
                                </li>
                            </ul>
                        </li>
                        <li class="mrrdir">
                            <a href="hub/0.6/src">src</a>
                            <ul class="mrrdirlist">
                                <li class="mrrfile">
                                    <a href="hub/0.6/src/OpenAjax.js">OpenAjax.js</a>
                                </li>
                            </ul>
                        </li>
                        <li class="mrrdir">
                            <a href="hub/0.6/testsrc">testsrc</a>
                            <ul class="mrrdirlist">
                                <li class="mrrfile">
                                    <a href="hub/0.6/testsrc/TestSuite.html">TestSuite.html</a>
                                </li>
 
                              <!-- .... -->

                            </ul>
                        </li>
                        <li class="mrrfile">
                            <a href="hub/0.6/build.xml">build.xml</a>
                        </li>
                        <li class="mrrfile">
                            <a href="hub/0.6/index.html">index.html</a>
                        </li>
                    </ul>
                </li>
                <li class="mrrdir">
                    <a href="hub/1.0_build117">1.0_build117</a>
                    <ul class="mrrdirlist">
                        <li class="mrrdir">
                            <a href="hub/1.0_build117/release">release</a>
                            <ul class="mrrdirlist">
                                <li class="mrrfile">
                                    <a href="hub/1.0_build117/release/OpenAjax.js">OpenAjax.js</a>
                                </li>
                            </ul>
                        </li>
                        <li class="mrrdir">
                            <a href="hub/1.0_build117/src">src</a>
                            <ul class="mrrdirlist">
                                <li class="mrrfile">
                                    <a href="hub/1.0_build117/src/OpenAjax.js">OpenAjax.js</a>
                                </li>
                            </ul>
                        </li>
                        <li class="mrrdir">
                            <a href="hub/1.0_build117/testsrc">testsrc</a>
                            <ul class="mrrdirlist">
                                <li class="mrrfile">
                                    <a href="hub/1.0_build117/testsrc/TestSuite.html">TestSuite.html</a>
                                </li>
                                  <!-- ... -->
                            </ul>
                        </li>
                        <li class="mrrfile">
                            <a href="hub/1.0_build117/build.xml">build.xml</a>
                        </li>
                        <li class="mrrfile">
                            <a href="hub/1.0_build117/index.html">index.html</a>
                        </li>
                    </ul>
                </li>
                <li class="mrrfile">
                    <a href="hub/home.href">home.href</a>
                </li>
            </ul>
        </li>
        <li class="mrrfile">
            <a href="home.href">home.href</a>
        </li>
    </ul>
</div>

As an added bonus, you can also get HTML wrapping of the XML file by appending the querystring, "?format=html".

http://cachefile.net/svc/mrr/scripts/OpenAjax/?format=html (click to view) 

You can let your imagination take you wherever you want to go as to what you would do with such a tool from here. I'm opening the uncommented server-side source code for this. The PHP file for my proprietary implementation is here: http://www.jondavis.net/misc/cachefile_mrr_gen.txt

Unfortunately, I have a sinking feeling that this opens up security vulnerabilities. If anyone can spot any, please let me know. I already filter out "..". 

kick it on DotNetKicks.com

LINQ-to-JSON

by Jon Davis 13. February 2008 10:16

A few days ago I posted a link / observation of LINQ-to-Javascript a.k.a. JSLINQ.

Ajaxian just pointed out a new project called LINQ-to-JSON that is more LINQ-like. One would use JSLINQ for working with any type of arrays in real Javascript. The LINQ-to-JSON solution looks like a truer LINQ coding experience; however, I can't tell if it's actually for Javascript or JScript.NET, the latter of which is not web browser Javascript and only runs in .NET. I'll check it out further but wanted to raise my eyebrows first. :P

http://james.newtonking.com/archive/2008/02/11/linq-to-json-beta.aspx

Currently rated 1.6 by 16 people

  • Currently 1.625/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , ,

Open Source | Software Development | Web Development


 

Powered by BlogEngine.NET 1.4.5.0
Theme by Mads Kristensen

About the author

Jon Davis (aka "stimpy77") has been a programmer, developer, and consultant for web and Windows software solutions professionally since 1997, with experience ranging from OS and hardware support to DHTML programming to IIS/ASP web apps to Java network programming to Visual Basic applications to C# desktop apps.
 
Software in all forms is also his sole hobby, whether playing PC games or tinkering with programming them. "I was playing Defender on the Commodore 64," he reminisces, "when I decided at the age of 12 or so that I want to be a computer programmer when I grow up."

Jon was previously employed as a senior .NET developer at a very well-known Internet services company whom you're more likely than not to have directly done business with. However, this blog and all of jondavis.net have no affiliation with, and are not representative of, his former employer in any way.

Contact Me 


Tag cloud

Calendar

<<  September 2020  >>
MoTuWeThFrSaSu
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

View posts in large calendar