existdissolve.com
the singularity of being and nothingness
the singularity of being and nothingness
Apr 28th
A month ago, or so, I reflected upon my journey toward becoming a better web designer. In that post, I dwelled mostly upon time-saving practices such as creating organized folder structures, labeling Illustrator layers, etc.
Another point, however, was about avoiding becoming completely consumed with solving specific problems as they are encountered. I noted that although there are some problems that have to be solved before progress can be made, the vast majority of hang-ups can be saved for later when a fresher perspective (or possibly a new bit of learning gained through doing other things) might make the answer more clear.
I think this is a gigantically important point, and I want to expand upon it, but from a different direction. In my first post, I was talking mostly about code–but what about actual concept development?
When it comes down to it, good design is–on a high level–of course about the user. A good design must facilitate an easy-to-use and a rewarding and enjoyable experience. While a lot of this occurs in layout, how users interact with code, etc., there is also an important part that small details play in contributing to a successful visit.
It is these details, after all, that More >
Apr 16th
For a new project I'm working on, I will need a mechanism for users to vote on certain pieces of content. Now it turns out that there are a billion and one ways of doing this, with an additional billion sets of frameworks. I was quite overwhelmed by the number of choices, so I've been putting it off for a while now.
Yet fortuitously, a couple days ago I was browsing the Spry docs and noticed two very promising words: Rating Widget.
Surely this cannot be what I'm looking for, could it? Ah but it was!
Recently, Spry updated its growing library of widgets to include a standard "star" rating system. Like it's other widgets, the rating widget comes with a single css file and a single javascript file. And also like other Spry widgets, it is completely simple to implement.
Assuming you have referenced the css and javascript files correctly, here's all it takes to set up a star rating system:
<span id="myrating" class="ratingContainer"> <span class="ratingButton"></span> <span class="ratingButton"></span> <span class="ratingButton"></span> <span class="ratingButton"></span> <span class="ratingButton"></span> <input type="text" id="ratingValue" name="dynamic_rate"/> <span class="ratingRatedMsg">Thanks for voting !</span> </span>
It's so simple it's almost laughable. But it gets much better. Like all More >
Apr 15th
As I develop more applications that leverage JavaScript–both for data manipulation AND for superfluous effects–the more I come to realize the inexpressible need for finding as many shortcuts as possible. Without exception, as my JavaScript becomes more involved, so the complexity increases exponentially. To remedy this, I've started relying on frameworks such as Adobe's Spry, mooTools, jQuery, etc. to make my life easier for everything from element selection to major effects processing.
However, probably the biggest time-saver is making a concerted effort to make my JavaScript unobtrusive. What is this, you say? Well, by no means does it have a solidified meaning. However, a few principles are core to any definition.
The first is the idea of abstracting the functionality of JavaScript (be it data handling or effect processing) from the design layer on which the functionality is placed. In short, this means that the HTML markup of a site (and its corresponding CSS) should not be dependent on the functionality of JavaScript; rather, the functionality of JavaScript should be "pluggable" into the markup that it finds.
Now of course, this is all-too-idealistic. There is never a scenario in which markup and functionality are mutually ambivalent towards one another. However, the More >
Apr 5th
This post will be short and sweet: In the week since the relaunch of singularityconcepts.com, I have been inundated with incredibly encouraging responses from an unbelievable number of people. The reaction to the new design has been overwhelming, and I am very humbled by the kind words that people have shared with me, as well as the design galleries that have featured my design.
Because I want to especially thank the design galleries that have featured this design, I want to include links to each gallery that gave kudos to the relaunch of singularityconcepts.com. All of these galleries feature extremely talented designers, and I am incredibly humbled to even be mentioned. Please take some time and check them out.
Most Inspired Blog – Weekly Top Standards
Share this:Mar 26th
Hey everyone!
Welcome to the relaunch of singularityconcepts.com! I am very excited to present my new design, something on which I've worked exremely hard for the last few weeks.
For first time visitors, let me introduce myself: my name is Joel Watson, and I am web designer/developer hailing from central Kentucky. Web design is a passion of mine, and I spend way more time than I should working to get better, discover new tricks, and just explore how to craft more immersive and meaningful web experiences. If you have a few seconds, take a look around, and if I can impose just a little on you, be sure to let me know what you think.
One final note: I love to blog about my experiences in web design, so be sure to grab the feed to this site's blog, and I definitely welcome any and all feedback on what you read, see or think.
Peace
Share this:Mar 26th
I am proud and excited to announce the relaunch and redesign of my web design portfolio – singularityconcepts.com .
This redesign has been long needed (I never really liked the original), and I am very pleased with the final outcome.
For this redesign, I not only took a radically different approach to the aesthetics, but I also retooled the purpose of the site. Originally, I tried to pass off singularityconcepts as a multi-person design firm, utilizing "we" to refer to work that, honestly, only "I" do. For this redesign, I ditched the disconnected feel of that kind of language and have switched to making this site a personal web technology portfolio of sorts for myself.
This means radical changes for existdissolve.com as well. From now on, all of my technology-related posts will happen at singularityconcepts. For those who read this blog (all 3 of you) and are bored by my ramblings about web design, those days of languish are over. And for those who like that sort of stuff, you will have to change your bookmarks :). To compensate for this, I am going to endeavor to be more regular in my theological postings. Life around my house is starting to normalize, so I More >
Mar 24th
A couple days ago, I posted an example of how Adobe's Spry Framework allows one to easily and quickly incorporate XML datasets into an application, allowing for a great alternative to page-to-page navigation and data mining.
One of the limitations I pointed out was the initial amount of coding involved. Well, that was because I'm an idiot.
While I've used Spry's Spry.Data.XMLDataSet() many times before, I literally had no idea how powerful it is, nor that it could interact with dynamically generated XML files, such as I was doing with ColdFusion components in my last example. However, such is not the case. Not only does this method allow me to do everything I was doing before, it involves a heck of lot less code. The entire invoke for the datasets here is:
var dsCities = new Spry.Data.XMLDataSet("getlocations.cfc method=getCities", "cities/city");var dsLocations = new Spry.Data.XMLDataSet("getlocations.cfc?method=getLocations&cityID={dsCities::@id}", "locations/location");
Two lines of javascript! Now of course, there is more to handle some of the behaviors…but I have effectively cut out about 100 lines from what I was doing before. Pretty cool!
Finally, the best part about this is it allows me to take full advantage of the framework's "spry:state". With this, one can set different "states" that will fire in relation More >
Mar 24th
Ok, so as everyone who reads this blog knows (or should know…), I am a web designer/web developer. On the development side, I am best at ColdFusion , one of the under-appreciated programming langugages out there. While ColdFusion is awesome, one of the drawbacks of it (as well as of PHP, .NET, etc.) is that it is a server-side technology, meaning (surprise, surprise) that all of the code processing done is accomplished on the server. So, any of the cool Web 2.0 stuff out there, like asynchronous form submission, has to use Javascript.
While ColdFusion 8 has some seriously cool AJAX features built into it that handle alot of this kind of thing with ease, it is not free and wonderful hosting companies (like GoDaddy) are slow to upgrade their servers to the newest version. Therefore, the onus is upon the developer to utilize the various work-arounds until ColdFusion 8 is firmly entrenched.
One tool that makes life significantly easier is Adobe's Spry Framework . While Spry includes a lot of the cool effects of other Javascript frameworks, one of the best parts of it is the easy way in which it allows Spry to make server-side calls to allow applications to harness More >
Mar 24th
Well, in case you live in a hole somewhere, the next three weeks are shaping up to be huge. In less than two weeks, God-fearing Americans will celebrate the day-before-Lent (Fat Tuesday) by more or less determining the identities of the Democratic and Repulican presidential nominees. In another week and two days, lovers across the world will commemorate their passions with cheap chocolates and over-priced floral arrangements.
Yet few realize that an even more momentous event will occur between these big days. But this event will be truly earth-shaking, and it will hit February 12th.
No, it's not the most recent Jack Van Impe prediction for the return of Christ, and it is not the release date of what is going to be the incredibly awesome sequel to Batman Begins, The Dark Knight.
Nope. February 12th is none other than the death of Internet Explorer 6.
Okay, that was a bit dramatic, and not entirely accurate. Despite fervent prayers in support of IE6's digicide, IE 6 has proven, historically, to be more difficult to kill than it is to design a website for (and that's saying something!). Rather, February 12th marks the date when Internet Explorer 7–IE 6's better (but still not More >
Mar 24th
Anytime one approaches a new design project, it is easy to get distracted by trying to have the project finished NOW, instead of doing necessary preparation work to ensure maximum work efficiency. I am as guilty of this as anyone. In the past, designing a website and bringing it through development was a hodge-podge of cutting Photoshop files and piecing together random bits of code, all the while constantly being frustrated that things were not finished YET.
As I've matured, I've learned to identify several time black-holes that serve to quickly derail a project's timeline.
Unorginization
Without question, this is the one for me. It is especially a problem because from design concept (Illustrator) to web-ready images (Photoshop) to HTML (Dreamweaver) to database (MySQL) to application code (ColdFusion), my files are touching a lot of applications. If I'm not careful, it's easy to, say, save Photoshop files to random places and then have to search for them when I need them in Dreamweaver. While this is only a matter of seconds (normally!), it adds up over the course of a project and is frankly annoying.
So the biggest time and headache-saver I've learned is to standardize every aspect of the project. This means I More >