Risen Against Gravity

GenSephyr

I've moved my blog and portfolio to http://fusedthought.com/en/blog. However, this site will still be kept as an archive...

Individual entires can still be accessed using their trackback links.

Showing posts with label Programming. Show all posts
Showing posts with label Programming. Show all posts

Thursday, November 29, 2007

Blogskin: FTStudio V2

Did a spot of shopping today for my grad night.. But since I got home slightly earlier than expected, I had time to do some programming. First thing I did (of course) was to change my blog skin.

So the usual info:
Skin Title: FTStudio V2 (FusedThought Official v2)
Number: 6th
ID: N6-29D11M2K7Y
Customization: None

Permanent skin application URL: http://gyeojz.blogspot.com/?css=6
Reset to default: http://gyeojz.blogspot.com/?css=0

Feel free to post any comments on this new blog design... =).

Brainstorming for the school project. But still drawing blanks =(

Thursday, October 04, 2007

Blogskins: FTStudio V1

So frustrated. 2 wasted days. Didn't have the heart to do anything.
Turned to changing this site skin to cool down. It may be weird for some, but quite effective for myself.

Anyway, here are the official information about the skin:

Skin Title: FTStudio V1 (FusedThought Official v1)
Number: 5th
ID: N5-03D10M2K7Y
Customization: None

Permanent skin application URL: http://gyeojz.blogspot.com/?css=5
Reset to default: http://gyeojz.blogspot.com/?css=0

Sunday, August 26, 2007

A negative programming

It seems like I've been involved in quite a few school related web stuff this past months. From the bowling blog to the school's anniversary website to the current alumni website which I have no time to complete till the end of my A level.

Talk about work.... The bowling site aren't that much a problem as its blogger based. However the other sites are quite an insomnia causing.
I can't believe I am going to say this, but I am starting to feel tired and nauseated from seeing codes.

Probably have to take a break from programming. coding a fully-fletched content management system, databases, maintenance tools as well as doing the graphics aren't a small feat. Especially when I have to do all those single-handedly with no one to turn to for help.

Stepping down doesn't mean totally abandon one's responsibility. I've wanted to relinquish all thoughts of intervening, but looks like I succumbed to temptation and stepped in.

Though I was asked to recover the pictures after the bowling team site mishap earlier this month, I've decided to contribute a final gift to the team, in the form of a brand new look for the site. I've given the site a "web 2.0" make-over, bringing that site up to be in line with the current trends in the web-design committee.

The theme, titled "bowl-a-lution" would add on to my list of XML templates to my collection, that would be my fifth, including all my works done on this blog (Risen Against Gravity).

Anyway, here is a screenshot of the site:


Or you to see the real thing, you can visit it at http://tjcstrikeforce.blogspot.com

Sigh.

On a sidenote, I've also decided to add a tagboard on this blog also.

Cherios.

Sunday, August 19, 2007

Blogskins: Anime.Otaku

New Skin again.

I didn't schedule to make a new skin this time round. It was because I was feeling abit frustrated that I decided to code one to relief stress.
Guess it was my record time in creating a new skin also. 45 minutes including the graphics.
In fact the graphics took me almost 30 minutes (I aren't that good at graphic manipulation. The css coding only took 15 minutes.

The rationale behind this skin name was because, Anime Otaku is taken to mean anime fan.
Although Otaku is a fairly derogatory term in Japan. Its most commonly used to refer to excessive obsession with Anime. However, in America, the term is often a badge of honor for hard-core anime fans.

This skin include a few firsts.
These are: Opacity effects, being Anime themed, a gradual (gradient) background as well as a new skin cataloging system.
Moreover, its the first skin to use CSS3's opacity property. However, this means that opacity effects will not be shown on certain browsers. Its minimal though. In fact, almost unnoticeable.

Since I constantly add new skins, I guess I should have some detailed skin launch format from now on.
So here it goes:

Skin Title: Anime.Otaku
Number: Quarto (4th)
ID: N4-19D08M2K7Y
Customization: None

As usual, this skin can be applied to the page permanently regardless of my future layout changes using this URL: http://gyeojz.blogspot.com/?css=4

To reset, use http://gyeojz.blogspot.com/?css=0

Credits to the respective creators of the individual pictures used to make the masthead.

Monday, June 04, 2007

water.no.fall

New layout, about 1 month after the launch of my second layout which was titled: Desire Secundus.

The new layout is titled water.no.fall.
This is the more closely tied to my blog title ("Risen Against Gravity") compared to my other layouts I've done so far..
As you may have noticed, the main waterfall picture is reversed, going against the natural gravity.

I've also finally incorporated a tag cloud.

This is my Third (Terzo) XML Layout.
And that can be applied to the page permanently regardless of my future layout changes using this URL: http://gyeojz.blogspot.com/?css=3

To reset, use http://gyeojz.blogspot.com/?css=0

Last but not least, a credit..... the original picture is taken by Jessica =)

Sunday, May 27, 2007

Blogskin / style switcher Version 2

In the last post (http://gyeojz.blogspot.com/2007/05/blogskin-style-switcher.html), I've announced the availability of the blogksin switcher.

After some work, I've updated it to remember the user's preferences via the use of cookies. It was some work, but finally it is ready.

For those who want to have a style switcher but are unable to use brothercake's IOTBS in Blogger or some other sites due to the same-origin policy, my style switcher may be the answer. However, it may not be suited for all, but at least it works.



Some good points over the usual "alternate stylesheet method";
1. It loads the styles on demand.
2. Its cross-browser compatible. (at least its tested to work in Firefox, IE6, IE 7 and Opera).
3. Its customizable to load other style required elements like javascript on demand too.
4. The file size is relatively small.

Known Issues
1. In Opera, default is alright. but some layout problems when a alternative style is used. Seems that it doesn't really support link disabled.



The switcher works by getting the ?css= Parameter in the URL.
index.html?css=0 resets to the default style. While other numbers corresponds to the other style types.

I'll be packaging the scripts into a zip file and releasing it under a license once I solve the Opera bug/problem.

So watch this space =)

UPDATE: Opera Problem fixed.

Tuesday, May 22, 2007

Blogskin / style switcher

Remember a few post ago at the release of my current blogskin, "Desire Secundus: Choosing the path to take", I was musing about the lack of support for the IOTBS switcher because of cross-domain restriction?

well, I've thought about it and came up with a solution.
Using a script from netlobo which gets url parameters, I've came up with something which emulates PHP (but less efficient) and is expandable for future blogskins/style.
It even downloads the blog styles on-demand...

However, there is one limitation. The user preferences aren't remembered and the only way is for the user to visit the site using the appropriate URL parameters to view the skin.

Probably the user preference will come at a later date.
For now, enjoy the switcher (located in the sidebar or somewhere in the page depending on the blogskin/style).

The GET URL parameter script is copyright to the respective programmer.
For now, the switcher is copyrighted to me. I may decide to release it under another license at a later date. For now, it is still undergoing some tests.

So enjoy!

(p.s. For those who haven't read the news on the closure of Yahoo photos, you can read an article about it at my tech blog.)

Monday, May 21, 2007

Blogskins: Desire Secundus

As you may have noticed, a new layout/blogskin is out. my old layout is still in use at my tech blog: http://tech-no-borders.blogspot.com.

This layout/blogskin is titled: Desires Secundus: Choosing the path to take.

Any comments on the blogskin/layout please do so.
Hope I've broken the "corporate look".

Wanted to incorporate a layout changer though... but (surprise surprise), it works in Firefox but not Internet Explorer (IE).
Even IE7 can't use it because of some cross-domain restriction that the browser places on JavaScript. So no choice. Had to take it out.

EDIT (22 May 2007): An update to a new style/blogskin/layout changer (which works in IE) at http://gyeojz.blogspot.com/2007/05/blogskin-style-switcher.html

Wednesday, December 27, 2006

New Blogger Schema

EDIT: (30th March 2007) Full Schema is now posted on my new tech blog: http://tech-no-borders.blogspot.com/

I know this post is going to bore those non-coders. But Oh well.. here goes...

I guess by now, since Blogger has gone out of beta, many would know that the templating system has been slightly changed. The most notable one would be the use of XML and the addition of the xmlns:b, xmlns:data and xmlns:expr namespaces...

Well, for those who use Eclipse IDE, XmlSpy or any other web development tools that accepts custom Schema, I've generated an inferred XML Schema file for the xmlns:b namespace...

Its definitely not complete. I use my current layout as the base to generate the inferred XML Schema... Maybe someone could improve on it. It would be even better if Blogger were to release a schema file to add template developers...


<?xml version="1.0"?>
<xs:schema xmlns:tns="http://www.google.com/2005/gml/b" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.google.com/2005/gml/b" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="include">
<xs:complexType>
<xs:attribute name="data" type="xs:string" use="optional" />
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element name="skin" type="xs:string" />
<xs:element name="section">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" name="widget">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="includable">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="loop">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q1="http://www.w3.org/1999/xhtml" ref="q1:ul" />
</xs:sequence>
<xs:attribute name="values" type="xs:string" use="required" />
<xs:attribute name="var" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" xmlns:q2="http://www.w3.org/1999/xhtml" ref="q2:select" />
<xs:element minOccurs="0" xmlns:q3="http://www.w3.org/1999/xhtml" ref="q3:ul" />
<xs:element minOccurs="0" xmlns:q4="http://www.w3.org/1999/xhtml" ref="q4:a" />
<xs:element minOccurs="0" xmlns:q5="http://www.w3.org/1999/xhtml" ref="q5:h4" />
<xs:element minOccurs="0" xmlns:q6="http://www.w3.org/1999/xhtml" ref="q6:span" />
<xs:element minOccurs="0" name="if">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" xmlns:q7="http://www.w3.org/1999/xhtml" ref="q7:h2" />
<xs:element minOccurs="0" name="if">
<xs:complexType>
<xs:sequence>
<xs:choice maxOccurs="unbounded">
<xs:element xmlns:q8="http://www.w3.org/1999/xhtml" ref="q8:a" />
<xs:element name="else" />
<xs:element xmlns:q9="http://www.w3.org/1999/xhtml" ref="q9:div" />
</xs:choice>
</xs:sequence>
<xs:attribute name="cond" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="else" />
<xs:element minOccurs="0" maxOccurs="unbounded" xmlns:q10="http://www.w3.org/1999/xhtml" ref="q10:div" />
<xs:element minOccurs="0" xmlns:q11="http://www.w3.org/1999/xhtml" ref="q11:dl" />
<xs:element minOccurs="0" xmlns:q12="http://www.w3.org/1999/xhtml" ref="q12:span" />
</xs:sequence>
<xs:attribute name="cond" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" xmlns:q13="http://www.w3.org/1999/xhtml" ref="q13:p" />
<xs:element minOccurs="0" maxOccurs="unbounded" xmlns:q14="http://www.w3.org/1999/xhtml" ref="q14:div" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="include">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required" />
<xs:attribute name="var" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required" />
<xs:attribute name="locked" type="xs:boolean" use="required" />
<xs:attribute name="title" type="xs:string" use="required" />
<xs:attribute name="type" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="class" type="xs:string" use="required" />
<xs:attribute name="id" type="xs:string" use="required" />
<xs:attribute name="maxwidgets" type="xs:unsignedByte" use="optional" />
<xs:attribute name="showaddelement" type="xs:string" use="optional" />
<xs:attribute name="preferred" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
<xs:element name="if">
<xs:complexType mixed="true">
<xs:sequence>
<xs:choice maxOccurs="unbounded">
<xs:element xmlns:q15="http://www.w3.org/1999/xhtml" ref="q15:span" />
<xs:element xmlns:q16="http://www.google.com/2005/gml/data" ref="q16:title" />
<xs:element name="else" />
<xs:element xmlns:q17="http://www.w3.org/1999/xhtml" ref="q17:a" />
<xs:element name="if">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q18="http://www.w3.org/1999/xhtml" ref="q18:a" />
<xs:element minOccurs="0" name="else" />
<xs:element minOccurs="0" xmlns:q19="http://www.google.com/2005/gml/data" ref="q19:post.title" />
</xs:sequence>
<xs:attribute name="cond" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element xmlns:q20="http://www.w3.org/1999/xhtml" ref="q20:h3" />
<xs:element xmlns:q21="http://www.google.com/2005/gml/data" ref="q21:top.authorLabel" />
<xs:element xmlns:q22="http://www.google.com/2005/gml/data" ref="q22:post.author" />
<xs:element xmlns:q23="http://www.google.com/2005/gml/data" ref="q23:top.timestampLabel" />
<xs:element xmlns:q24="http://www.google.com/2005/gml/data" ref="q24:top.commentLabel" />
<xs:element xmlns:q25="http://www.google.com/2005/gml/data" ref="q25:post.numComments" />
<xs:element xmlns:q26="http://www.google.com/2005/gml/data" ref="q26:top.commentLabelPlural" />
<xs:element xmlns:q27="http://www.google.com/2005/gml/data" ref="q27:postLabelsLabel" />
<xs:element name="loop">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q28="http://www.w3.org/1999/xhtml" ref="q28:a" />
<xs:element name="if">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="cond" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="values" type="xs:string" use="required" />
<xs:attribute name="var" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element xmlns:q29="http://www.w3.org/1999/xhtml" ref="q29:h4" />
<xs:element xmlns:q30="http://www.google.com/2005/gml/data" ref="q30:commentLabel" />
<xs:element xmlns:q31="http://www.google.com/2005/gml/data" ref="q31:commentLabelPlural" />
<xs:element xmlns:q32="http://www.w3.org/1999/xhtml" ref="q32:dl" />
<xs:element xmlns:q33="http://www.google.com/2005/gml/data" ref="q33:comment.author" />
<xs:element xmlns:q34="http://www.w3.org/1999/xhtml" ref="q34:p" />
<xs:element name="include">
<xs:complexType>
<xs:attribute name="data" type="xs:string" use="required" />
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element xmlns:q35="http://www.w3.org/1999/xhtml" ref="q35:ul" />
<xs:element xmlns:q36="http://www.w3.org/1999/xhtml" ref="q36:dd" />
<xs:element xmlns:q37="http://www.google.com/2005/gml/data" ref="q37:label.name" />
</xs:choice>
</xs:sequence>
<xs:attribute name="cond" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element name="loop">
<xs:complexType>
<xs:sequence>
<xs:choice maxOccurs="unbounded">
<xs:element name="if">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="if">
<xs:complexType>
<xs:sequence>
<xs:element name="include">
<xs:complexType>
<xs:attribute name="data" type="xs:string" use="required" />
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="cond" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="include">
<xs:complexType>
<xs:attribute name="data" type="xs:string" use="required" />
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" xmlns:q38="http://www.w3.org/1999/xhtml" ref="q38:h2" />
</xs:sequence>
<xs:attribute name="cond" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element name="include">
<xs:complexType>
<xs:attribute name="data" type="xs:string" use="required" />
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element xmlns:q39="http://www.w3.org/1999/xhtml" ref="q39:dt" />
<xs:element xmlns:q40="http://www.w3.org/1999/xhtml" ref="q40:dd" />
<xs:element xmlns:q41="http://www.w3.org/1999/xhtml" ref="q41:div" />
<xs:element xmlns:q42="http://www.w3.org/1999/xhtml" ref="q42:a" />
<xs:element xmlns:q43="http://www.w3.org/1999/xhtml" ref="q43:li" />
<xs:element xmlns:q44="http://www.w3.org/1999/xhtml" ref="q44:option" />
</xs:choice>
</xs:sequence>
<xs:attribute name="values" type="xs:string" use="required" />
<xs:attribute name="var" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

Tuesday, December 19, 2006

Markup Languages, Blogger , the Web and Beyond

Ok.. This post is gonna sound like a big rant and most would probably be turned off by the web jargon. Oh well... here goes...



As the title suggested, its about markup languages. Well we don't seem to get enough of it. Although mostly based on eXtensible Markup Language (XML) which made things slightly easier. In fact, HTML (HyperText Markup Language) and the reformulated HTML base on XML rules: the XHTML (eXtensible HyperText Markup Language) is like a subset to XML.



Blogger


With the introduction of the new Blogger beta, is the introduction of a complete set of template-ing tags. It now takes XML tags instead of the classic HTML tags. Not that the support of the old tags have broken, you can choose classic if you want to, but then whats the point of upgrading if you don't use it?



Have you noticed that the you no longer need to wait to republish the entire site or the "Publish Index Only" etcetera? Well, I heard that Blogger works differently now. Instead of having published static files, the files are brought together dynamically before serving up to the browser. When a file is requested, information about the widgets and post and headers are gathered and then a HTML file is generated. It reminds me of PHP (PHP: Hypertext Preprocessor), Adobe / Macromedia ColdFusion and evem the newer Adobe / Macromedia Flex Data services.



Well judging from the namespaces given, it seems that it may be named Google Markup Language (GML).. But then again, GML also stands for Geography Markup Language for those who are familiar with mapping tools.



And by the way, namespaces refers to the xmlns section. In an attempt to explain: "XML namespaces provide a simple method for qualifying element and attribute names used in Extensible Markup Language documents by associating them with namespaces identified by URI references." (Source: W3C) But really namespaces are more useful than that and frankly, I don't know much about it myself.



Its going to take sometime again before I can come up with any new layout that conforms to w3c standards. However, for the quick and easy way of customizations, there is actually a website which already does some hacking into the new blogger beta templates. Hackosphere has some excellent methods and hacks. I use their label widget hack too..



With a 3 new namespaces, I really hope Blogger would release the schema for the namespaces. Doing so is going to make development of the templates even easier. With tools like XML Spy and the excellent Open-Source Eclipse Integrated Development Envrionment (IDE) where it is possible to customize it to use custom schemas (.xsd files).



XSD by the way "is a library that provides an API for manipulating the components of an XML Schema as described by the W3C XML Schema specifications, as well as an API for manipulating the DOM-accessible representation of XML Schema as a series of XML documents, and for keeping these representations in agreement as schema are modified." (Source: Eclipse Community)



And well API stands for Application programming interface. I shan't attempt to go into it and act like I know it well.. because I don't...



Adobe/Macromedia Flex



Well this is something that I am looking into now, ever since the release of version 2 of Flex, and the release of the free Flex 2 SDK. It uses a customized version of XML too. Known as MXML. Again, knowing XML is useful here.It is to be a framework for RIA (Rich Internet Application) development. Flex generates Flash (.swf) files as the front-end.



There isn't much I can say here since I just started looking into it.
However, for the curious, you can look at the Flex website at http://www.adobe.com/products/flex/.



Its quite free in a sense as you can develop Flex Applications with just the SDKs and a editor of your choice. My favorite is Eclipse, but even Notepad will do.



ColdFusion



Its been in the market for sometime. Can't say much about it though... Never really taken to it since ColdFusion pages require a coldfusion support to be installed on the server.



However, like the rest mentioned here, ColdFusion also has its own Markup Language called the CFML (ColdFusion Markup Language)....



And??... (Web 2.0, Web 3.0 and Beyond)



The list goes on and on and on... There are definitely more out there which other may know and I have not heard of. But the list is definitely growing. The only good thing that comes out of this is that it increases a person's employability to have these skills in the age of Web 2.0. In fact, Web 3.0 is already being disussed.



Web 2.0 is "a phrase coined by O'Reilly Media in 2004, refers to a perceived or proposed second generation of Internet-based services—such as social networking sites, wikis, communication tools, and folksonomies—that emphasize online collaboration and sharing among users. O'Reilly Media, in collaboration with MediaLive International, used the phrase as a title for a series of conferences, and since 2004 certain technical and marketing communities have adopted and loosely adapted the phrase." (Source: Wikipedia



Information about the percieved Web 3.0 is still dispersed. But according to ZDnet, Web 3.0 is divided into few secions, namely: API services, Aggregation services, Application services, Serviced clients. There is much that I haven't read about Web 3.0, but for more information, the article on the topic at A List Apart may help shed more light to it.



For now, I guess we'll have to be adaptable to the various languages and look as the web proceeds beyond into semantics, user experiences and controls.

Sunday, April 30, 2006

Microsoft making it free?? Wow

In a press release by micorsoft corporation, they have announced during the launch of the newest upgrades to their visual studio products that the line of "express software" (i.e. Visual studio express ranch of software) will become free permanently.



This move has definitely been well-recieved especially by the hobbyist community who relish the power of Visual Studio but don't beed all the development power offered by the professional and enterprise versions of the development software.



Article:
http://www.microsoft.com/presspass/press/2006/apr06/04-19VSExpressFreePR.mspx




and here's something interesting I found on my friend's blog. It is on Google Video:




Microsoft Redesigns the iPod

Thursday, February 23, 2006

Finally launched

Yepz... I launch my new site. http://gyjz.sepwich.com
My first venture into PHP as well as upgraded the standards from XHTML 1.0 Transitional to XHTML 1.1.


You can get updates for this blog via that site too.
It is a one stop access for blogs, government news, releases.
Site includes history essays and so on.


Still expanding to include other content.


Please visit.
Feedbacks welcomed.

Content and Layout by GenSephyr. Copyright © 2007 GenSephyr All Rights Reserved

Site designed with Open Source Technologies.