Dec 30th 2008
Entr’Acte 2
Responses Closed
Over a year ago I wrote an article announcing the beta version of Entr’Acte. I haven’t released a version to the public since, mainly because people as usual were incapable of reading the skin’s description before commenting on it. In fact for quite some time after I released it I got disheartened with the entire process. It just seemed at the time that it was damned if I do, damned if I don’t. I finally decided that I’d just make the skin for myself, so that’s what I’ve done. If no one else likes it so be it. Here it is– Entr’Acte 2.
When I started back the first thing I thought I would do is work within the boundaries the skinning system allows me. Thankfully, Opera 9.5 allows for a whole lot more than its predecessor. Opera 10 is going to get an overhaul from Jon Hicks. This skin works on the latest snapshot, but I am unsure for how long. I believe Jon will do an excellent job, and skinning on Mac OS X would become more of adjusting the main skin for personal preference and not making the program itself usable which is what it should be to begin with as that’s what Opera is about anyway.
There’s still many things that to my knowledge that are impossible to accomplish with the skin. A whole lot more than was possible before is possible for skinning. Due to limitations in skinning and/or my own toolbar preferences there aren’t any skin settings for having tabs at the bottom or on the sides, and placing the panel on the right isn’t very visually appealing either. I will eventually add support for different tab placements, but the latter will require a skin.ini hack to work properly. Speaking of such there already are a few hacks in place. The skin also supports (per Ralf Demuth’s request) Google Chrome-like tabs in two different flavors, aqua and graphite:


I personally find the Aqua Chrome tabs to look quite a bit garish. Like on the Google Chrome application itself the tab bar becomes an eye sore, where your eye wants to focus on it rather than the content you’re reading. The graphite version strips that problem away in my opinion, but I’m not too big of a fan of Chrome’s tabs anyway. The Chrome appearance has yet another hack in place, and it’s a custom button which allows for the tab bar to have a new tab button similar to Google Chrome’s new tab button:
Entr’Acte 2 also contains 16×16 icons for use in mini toolbars (like the Status Bar) and through a skin.ini hack the ability to use mini icons for all toolbars:

Using small icons for everything isn’t even remotely native, but like with the Chrome tabs there were people who helped me test this skin like Ralf who requested this as well. Having created 16×16 icons initially I was delighted to find a way to use them in the end.
There should be an easier way to have options in Opera skins, and the only way I can think of sanely offering the different options is to offer multiple skin.ini files where if someone desires these different options here they can replace the skin.ini file with these:
To generate these I use a PHP script that create these automatically for me, but it’s not usable for the general public as it’s a hack job at best. Probably in the future I’ll have a form available that can generate these and a lot more. This’ll do for now.
Download
Entr’Acte 2 (615 KB) — Restart Opera to make sure the skin displays correctly.
I am offering the download from my own server as my skin hasn’t been accepted on My Opera yet. If you are using Opera it should automatically try to apply the skin. When it is accepted then I’ll update the post with the new location.
Dec 27th 2008
The Curious Case of the Red Ass
Responses Closed
The hospital is usually a place for healing, a place for the sick, and a place to get better. For me this month it’s been a place of red ass.1 My mother’s been sick the latter part of this month but not entirely of her own doing. This whole ordeal made me more angry than I’ve been in my entire life. It’s made me question many things, including my own sanity at one point. I haven’t discussed many personal situations in my life before now here, but there’s always a beginning for everything. This is going to be an extremely long read, and might be written progressively worse as I recall everything; bear with me.
Anyone who’s been following me on Twitter has noticed for the most part for the past week or so I’ve been monotonous in my tweets. My tweets mostly consisted of curse words and anything to do with doctors, my mother, or the hospital itself which would probably constitute both tone and subject respectively. My mother was being dealt an injustice in my opinion, and was suffering due to medical malpractice.
My mother is a 45 kg (100 lb), 65 year old woman who at a very young age contracted polio, and as a result she has post polio syndrome which has caused her to have scoliosis and osteoperosis for the majority of her life. Many people who’ve known her her entire life don’t even know that. She doesn’t speak of it. She doesn’t and hasn’t let it be a hinderance. She’s smoked nearly her entire life, so decided since she was on Medicare to go to the doctor to quit smoking. She decided to go to my father’s general practice doctor. Having not been to any doctor in 20 years or more he decides to go on a fishing expedition by running tests on her. One of the tests was a bone density test which in her case is superfluous as it’s obvious that she already has osteoperosis.
She goes along with it and decides to go to the hospital for the test on the 12th. They lie her flat on a cold, hard table when she’s incapable of doing so. After thirty minutes lying in a position which causes her extreme pain her entire back goes into a massive muscle spasm when she gets up off the table. Despite the pain she drives herself home and sits in her chair the entire weekend taking small amounts of over-the-counter pain medication when the pain becomes unbearable.
That following Monday she has an appointment and goes to the doctor’s office. When she states she has trouble breathing the doctor gives her a chest x-ray. The chest x-ray reveals that she has fluid in her chest cavity and within her lungs. I have no medical degree at all, much less a doctorate in any form of medicine or practice but from looking at her x-ray I would have deduced that the fluid in her chest cavity was from her back injury as her heart isn’t enlarged to show congestive heart failure.2 The fluid in her lungs would have obviously been pneumonia too my eyes, and an examination of the white blood cell count in her blood would have been the next step. He instead states she has COPD and congestive heart failure, and that she needs to go to the hospital. She refuses to go, instead wanting him to give her antibiotics for pneumonia and some pain medication for her back. He refuses to admit it’s pneumonia and prescribes her one 75 mg percoset every four hours for her back with a followup appointment at my father’s cardiologist the upcoming Friday.
She’s driven home by my sister, takes a percoset, and is braindead for almost two days straight. In a three day period she takes two and a half pills. By that Thursday she’s nothing more than a vegetable. Knowing something was completely wrong my sister drives her to the doctor’s office. He puts her in the hospital, telling the nurses she overdosed herself on pain medication. When she’s initially brought into the ICU the nurses are resentful believing she is yet another drug addict who overdoses themselves during the Christmas holidays due to deep depression. She’s put into a room, given methadone to remove the effects of the pain medication, and instantly shows signs of having a massive breathing problem as the pain medication disguised the fact she had one. They check her vitals and find that her O2 levels are near-death levels and her CO2 levels were so high her blood was acid. She’s instantly put on a machine to force oxygen in her and to release the carbon dioxide. Immediately afterwards they perform a chest x-ray which to a pulmonary doctor shows she has pneumonia.
From reading my mother’s charts originally written by her general practice doctor the pulmonary doctor sees that she’s been diagnosed with COPD. He does the usual, going to my sister and asking for family history. She repetitively tries to tell the doctor that prior to that previous Friday she was perfectly fine. He ignores that fact and continues to believe the general practice doctor’s misdiagnosis. My father’s cardiologist who she had the appointment with shows up and is the only one to believe us, knowing that we aren’t idiots from his experience of taking care of my father. He examines the chest x-ray and sees pneumonia. He states that she could have COPD, but a test would need to be performed first for that. His personal opinion was that she did not have it, however. He stated that from the x-ray the right side of her heart was enlarged a slight bit, but it could be from smoking for 50 years or due to the extra strain the heart was going through from having severe pneumonia. He wanted to do a heart cath to make sure that it was what he thought, but that would come after she got out of the ICU.
She’s left in the ICU for a few days where each day we could see that she was getting progressively better, but those days weren’t without incident. Each day she sees a different pulmonary doctor, each with the personality of a rotted piece of wood. Each day we would tell them she was fine that previous Friday, and each day we would be essentially told we were stupid and that a small woman with post polio syndrome would be perfectly capable of disguising a severe case of COPD. We kept our mouths shut, knowing full well that was bullshit as we know two people with severe cases and neither were able to hide it before having to be permanently plugged into oxygen– neither having severe physical diseases either. She was eventually let out of the ICU and put into a room after spending a needless day in the unit waiting for a replacement pulmonary doctor at 18:00 to show up to act as if he was checking up on her.
She is moved to a room where she begins to stagnate, not getting any better only getting more angry with each passing day as she can do nothing but sit there and watch TV. On Christmas Eve we receive notification that her general practice doctor has decided to go on vacation for five days and somehow forgot to mention such the day prior. We would be seeing one of four different replacement doctors that morning sometime. That morning at 8:00 she was scheduled for a heart cath which was performed at 6:30 instead. She wasn’t found to have any problems with her heart, and while he had control over her healthcare in the lab he gave her a lung pressure test which showed she didn’t have COPD and barely even had emphysema even after 50 years of smoking. As a result both he and the pulmonary doctors release her from their care. Under both doctors’ opinions she should go home that day.
She returns to her room where she awaits the replacement general practice doctor who shows up and states that she will not be going home as she is still too weak, but when I ask him if he could stay there for a minute or so for my sister to make it to the room from the first floor he lies and states he has a call from the ER he has to handle. He subsequently spends 20 minutes at the nurse’s station looking at paperwork for other patients on the floor instead of rushing to a fictional emergency room. At that point I become more angry than I had been in my entire life believing that he should be let go as trusting a liar to take care of my mother wasn’t an option in my opinion. I didn’t have power of attorney, so I couldn’t make that decision for my mother. Christmas day arrives, and the doctor shows up really early that morning to patronize my mother and tell her she would be spending Christmas in the hospital which makes her so furious that she becomes quiet for the majority of the day in a state of increased blood pressure.
The following day I make it to the hospital where my sister tells me that her primary pulmonary doctor showed up that day to check on his patients and wonders why she is still in the hospital. We express the same sentiment. He leaves, and a few hours later yet another replacement general practice doctor shows up, different from the two days prior. He says that she has to remain in the hospital and for another week which instantly makes myself and my sister so angry we could spit nails. After he treats us as if we are stupid like the majority of her doctors have I get visions in my head of how to do bodily harm to him, so to keep from punching a hole in his head I storm out of the room and instead punch a hole in the wall of the front lobby’s men’s bathroom. I thought the day before I was angry; that was nothing compared to the state I was in at that point. The anger seemed to radiate from every inch of me, and people moved out of my way as I came barreling down the halls of the hospital. While I was gone my sister vehemently had an argument with the doctor where she picks apart every single reason he has for my mother’s sojourn. As I’m returning to the room I could hear from the other end of the hall their ensuing argument. The nurse’s station is in an uproar over the unexpected ruckus. Being so angry I pretty much ignore their existence and walk down to the room ready to remove the doctor from my mother’s sight personally with the intent of not causing any harm to him in the process as I already releaved my desire to do such on the bathroom wall downstairs. He storms out of the room in anger himself while my sister patronizes him as he runs out the doorway. He looks at me, acts like he wants to say something, and decides not to due to the look upon my face. If he did say something derogatory at that moment I would have made him require a hospital room of his own despite knowing fully the consequences of my actions.
I enter the room where my sister is in a state similar to my own. We calm each other down, and the doctor walks in again. I turn around to look at him ready to intently do what I came back to the room to do in the first place. He instead states that he talked with her pulmonary doctor who states that she should go home or she’ll get worse, and that he wanted to come back to state that he’s going to be signing his part of her release papers in just a moment or two. We don’t say anything, and he leaves. My sister decides to leave the room to cool off some more and meets her cardiologist in the hall who states that he wants to come by to see my mother, so my sister returns to the room. He walks in with a grin on his face and says, “Well, I heard you have been causing a problem.” We ask him where did he get that impression, and he states that he heard it all from the nurses. He calms my mother down telling her that she has nothing to worry about. There’s nothing wrong with her but with some remaining bits of pneumonia, and that she’ll make a full recovery. My mother goes home, and that night we open presents upon her insistence. We were going to postpone it until Sunday. She has a followup appointment next week to another general practice doctor suggested by the cardiologist. All is well.
From this experience I’ve come from it with a very sour view of doctors for the most part. The entire reason why she was in the hospital was due to medical malpractice, and the needless excessive duration of her stay in the hospital was due to such as well. Her prolonged stay was due to her replacement general practice doctors’ indolence because they didn’t want to do the work to sign her out of the hospital. Her pulmonary doctors never performed any form of a respiratory test on her of any kind because they assumed the general practice doctor had done so already despite our telling them she hadn’t had a test, but they did come to their senses after the cardiologist decided to perform one on my mother.
For the most part when someone is handed their medical doctorate degree and gains MD on the end of their name they instantly develop a mental retardation, blindness, and deafness due to their inability to assume that anyone without a doctorate degree in anything has the proper sense to know, say, or see anything. It develops into a sort of god complex where they essentially consider themselves above everyone else. In the United States there aren’t any titles. No one is a queen or king. No one is instantly from birth better than anyone else. Respect is earned and not entitled, not even to doctors. I can say without a shadow of doubt that I’ve lost much of my respect I might have had initially for any doctor, and I can say I have more than an excessive amount of respect for my father’s and now my mother’s cardiologist.
I don’t believe I would have gotten through this without the help of my friends and the continuous show of support from followers on Twitter. Thank you all.
Oct 7th 2008
Expecto Patronum
Responses Closed
For quite some time now (well ever since I read the first book) I’ve wanted to do some sort of Harry Potter illustration. Especially after the movies and their vagrant attempts to rewrite the books more than necessary to translate each volume to film I’ve wanted to do something that is more accurate to Jo’s descriptions in the book. This is the result of about a month’s work and quite a bit of research which included listening to each of the books while working.
This doesn’t illustrate any scene in the books. To any Harry Potter fan what is going on is quite obvious. The illustration consists of Harry, Ron, and Hermione battling dementors with their patronuses which are a stag, Jack Russell terrier, and an otter respectively. I couldn’t think of a scene from the books where the three were together, over 13 years of age, casting some cool spells, and without any other main characters around them. Naturally it had to be obvious as well what was going on. It probably portrays each of the characters as 16 year olds. They could pass for seventeen (and Hermione probably is by that point), but from much of the descriptions in the last book they weren’t at times even wearing robes at all. Their school uniform matches the plain black robes with no embellishments worn by students at Hogwarts as described in the books. At times the robes are described as being pulled over the head, so I made them appear as if the only way to put them on is to put it on over your head like a big sweater or something.
In the movies they decided to stray differently than how Rowling describes the wands. Each of their wands should appear to be the correct length, but due to the lighting only a bit of Hermione’s could be spotted. They’re smooth, cyllindrical sticks of wood with a bit of engraving and craftsmanship to them.
Ron is quite a bit taller than Harry with a longer nose and freckles, but in this lighting and angle it’s hard to denote how long his nose is or see much of the freckles I painted on there; they’re there. Hermione is shorter than both of them with the typical bushy hair. Oddly enough after drawing them each one of them resembles their movie actor counterparts in some way or another, especially Ron. I’d like to say that was intentional, but it wasn’t at all.
The image is dark, blue, and misty due to the description of the dementors’ magical abilities to turn the sky completely dark, generate immense cold, and generate a cold low-lying mist. Blue seemed to be a natural color for it. The ratio of the image is quite horizontal simply because I wanted an image I could stretch across my two monitors. No real deep thought went into choosing the dimensions. The image up top is a hyperlink to the image’s page on Flickr. Larger sizes are viewable from there. Well, I could talk about it some more, but I think I’m tired of writing this post. I’ll stop here for today.
Oct 2nd 2008
→ Adium for iPhone?
The big news yesterday was that Apple dropped the NDA on released software. I for one have been looking for an excellent IM client for the iPhone that didn’t require me to jailbreak it. I don’t think many truely understand how good this news is other than Apple’s lifting of their iron grip on iPhone development which never should have been done to begin with. It means that open source software is possible for the iPhone. Adium is one of my favorite applications, and is under the GPL — which prevented it from being developed for the iPhone without violating both the NDA and the GPL. Adium likely won’t be developed for the iPhone at least until Leopard is required for it which could still be a while. The fact of the matter is that an application I use daily might someday be on the iPhone. IM will one day finally be done correctly on the iPhone.
Sep 25th 2008
Tweet from Opera’s Address Bar 2
Responses Closed
A week ago I wrote about tweeting from Opera’s address bar and presented a method for doing so without aid for external scripts or services such as a method given a couple of months ago. Since then my method has made its way across the interwebs even being posted on My Opera, but there’s a better way to do it.
The method I presented was ugly, but it worked. The jist of it was that it used a data URI to
feed Opera a ready-made document. It’s long-winded and difficult to modify. The reason why I did it that way was because I tried using a
javascript URI when a blank document or Speed Dial was open, and I’d get nothing as it didn’t
have a document to modify. I didn’t think to set a variable to create a new document as this solution provided for me.
I decided to take the time to expand upon it quite a bit. One problem that could occur to users is that they have no way to know how many characters they’re typing without counting them manually, so if you go over 140 the user would have a truncated tweet or if they went over 160 their tweet would be rejected. I’ve solved that by displaying a form in certain situations allowing the user to modify his/her tweet without having to retype it:
It’s similar to Twitter’s own form. I have programmed support for submitting sources, but I have to submit the application form to Twitter to be accepted first. It definitely should be easier to maintain than that mess of junk. EDIT: Fixed a bug where it wouldn’t redirect when the script was being operated off the web form.
javascript:(function(u,p) {var d=document;var str="%s".replace(/\+/g,' ');var t=d.createElement("title");var s=d.createElement("style");t.innerHTML="Opera Address Bar Twitter Client";s.setAttribute("type","text/css");s.innerHTML="iframe{visibility:hidden;width:0;height:0;}";var h=d.getElementsByTagName("head")[0];h.appendChild(t);h.appendChild(s);var f=d.createElement("form");var i=d.createElement("iframe");f.method="post";f.action="http://"+u+":"+p+"@twitter.com/statuses/update.xml";f.target=i.name='tweet';var fs=f.appendChild(d.createElement("fieldset"));t=fs.appendChild(d.createElement("textarea"));h=fs.appendChild(d.createElement("input"));h.setAttribute("name","source");h.setAttribute("type","hidden");h.setAttribute("value","operasaddressbar");t.name="status";t.value=str;document.body.appendChild(i);if(str.length>140) {if(str.length<160) {if(confirm("Your status update contains more than 140 characters. The full update will only be viewable on the web. Cancel to edit and resubmit or click OK to continue.")) {f.submit();i.onload=function(){window.location="http://twitter.com/"+u;};}} s.innerHTML+="iframe,html,form,body,fieldset,p,h1,h3{margin:0;padding:0;border:0;}html{background-color:#9ae4e8;}body{width:510px;padding:20px;background-color:white;margin:40px auto 0 auto;}form{position:relative;}h1{font-weight:normal;font-size:20px;line-height:36px;letter-spacing:-1px;}h2{font-weight:normal;color:#ccc;font-weight:bold;font-size:29px;position:absolute;top:45px;right:0;font-family:Georgia,serif;line-height:0;}body,textarea,button{font:normal 12px/18px \"Lucida Grande\",\"Trebuchet MS\",sans-serif;}textarea{width:496px;height:45px;padding:5px;}button{float:right;font-size:14px;color:#444;background-color:#f5f5f5;border:1px solid #dadada;padding:10px 32px;margin-top:4px;}button:enabled{cursor:pointer;}button:enabled:hover{background-color:#e3e3e3;border:1px solid #b9b9b9;}button:disabled{opacity:0.5;}p{margin-bottom:1em;height:30px;}";var h1=d.createElement("h1");h1.innerHTML="What are you doing?";var h2=d.createElement("h2");var strlen=str.length;h2.innerHTML=str.length;var b=d.createElement("button");b.setAttribute("type","submit");b.innerHTML="update";var p=d.createElement("p");fs.insertBefore(h2,t);fs.insertBefore(h1,h2);fs.insertBefore(p,h1);fs.appendChild(b);if(str.length>160) {p.innerHTML="Your status message contained more than 160 characters. Shorten it to 140 or 160 characters to have it truncated and viewable only on the web.";} else {p.innerHTML="Modify your message to contain less than 140 characters and/or hit submit to resubmit.";} document.body.appendChild(f);i.onload=function(){window.location="http://twitter.com/"+u;};var limit=false;t.onkeyup=function() {tlen=t.value.length;if(tlen==0) {b.setAttribute("disabled","disabled");} else if(b.getAttribute("disabled")=="disabled") {b.removeAttribute("disabled");} h2.innerHTML=tlen;if(tlen<strlen&&!limit) {limit=true;} if(tlen>160&&limit) {t.value=t.value.substring(0,160);h2.innerHTML=160;}};} else {f.submit();i.onload=function(){window.location="http://twitter.com/"+u;};}})('ook','eek');
Still ugly, but it at least makes sense! The directions are identical to what they were before:
- Copy the long
javascriptURI into a text editor and replace “ook” with your twitter username. - Replace “eek” at the end with your password.
- Go to Tools → Preferences (or Opera → Preferences on Mac OS X).
- Click on the Search tab then click the Add… button.
- In the input box labeled Name type in
Twitter. - Type in a suitable keyword in the
Keywordfield. I usetw. - Paste in the
javascriptURI from your text editor into theAddressfield and click OK.
Type tw Tweet! and it should send a tweet if you do not include quotation marks in your tweet. I cannot fix that as Opera’s text
replacement doesn’t escape quotes. Perhaps this can be fixed in a future version of Opera. Enjoy. It’ll probably be the last time I’ll take a crack at it.
I’ll at least update if there’s an update on my source name approval process. EDIT: It’s been approved, and the code above has been updated to
reflect the new source name. When updating the status it should show “Opera’s Address Bar” linking back to this article.
Sep 19th 2008
→ Espresso
Looks to be a good competitor to Coda already. One thing I hate about Coda is that while it does have everything in one window none of its individual parts are powerful enough for my use. Its usefulness drops to almost nil the second you start adding server-side languages into the mold. Espresso seems to be going about the “one window web development” thing a different way. I sure hope to be a beta tester.
Via (Jon Hicks).
Sep 17th 2008
Tweet from Opera’s Address Bar
Responses Closed
EDIT: This is outdated information. I provided a better solution a week later.
A few weeks ago my good friend Oleg Melnychuck thought it’d be awesome to have Twitter integration in Opera. I agree wholeheartedly, but I don’t think Opera would add it. I thought that sending a tweet using Opera’s custom search feature would work by right-clicking on the update form on my Twitter and going to “Create Search”. That will work as long as there’s an active auth session, so it’s not usable unless you’ve already logged in.
Yesterday afternoon it came to me that I could use JavaScript and XMLHTTPRequest to send the POST data. Well, that didn’t work
because cross-site requests aren’t allowed. I was about to give up when it came to me to use an object element (standards replacement for iframe)
that contained a document with a form and some JavaScript to automatically submit the form. Then after that is done the script would redirect to the user’s
Twitter page. The document within the object element is included using a data URI so
I could include the %s required by Opera to substitute the query text. I initially tried to use it as pure JavaScript with a
javascript URI, but it didn’t work all the time in Opera because if typed into the address bar
when a blank document or Speed Dial was active nothing would happen as the JavaScript didn’t have a document to replace as neither the blank document nor Speed
Dial is markup. My only other option was to make it be a data URI. It’s ugly, but it does
work:
data:text/html,%3C%21DOCTYPE%20html%3E%3Chtml%20lang%3D%22en%22%3E%3Chead%3E%3Cmeta%20charset%3D%22UTF-8%22%3E%3Ctitle%3ETweet%3C%2Ftitle%3E%3Cstyle%20type%3D%22text%2Fcss%22%3Eobject%7Bvisibility%3Ahidden%3B%7D%3C%2Fstyle%3E%3C%2Fhead%3E%3Cbody%3E%3Cscript%20type%3D%22text%2Fjavascript%22%3Efunction%20enc%28text%29%7Breturn%20encodeURI%28text%29.replace%28%2F%5C%2B%2Fg%2C%27%2520%27%29%3B%7D%20var%20tweet%3Denc%28%27%s%27%29%3Bvar%20username%3Denc%28%27ook%27%29%3Bvar%20password%3Denc%28%27eek%27%29%3Bdocument.write%28%27%3Cobject%20data%3D%22data%3Atext%2Fhtml%2C%253C%2521DOCTYPE%2520html%253E%253Chtml%2520lang%253D%2522en%2522%253E%253Chead%253E%253Cmeta%2520charset%253D%2522UTF-8%2522%253E%253Ctitle%253ETweet%2521%2520Tweet%2521%253C%252Ftitle%253E%253C%252Fhead%253E%253Cbody%253E%253Cform%2520method%253D%2522POST%2522%2520action%253D%2522http%253A%252F%252F%27%2Busername%2B%27%253A%27%2Bpassword%2B%27%2540twitter.com%252Fstatuses%252Fupdate.xml%2522%2520name%253D%2522tweet%2522%253E%253Ctextarea%2520name%253D%2522status%2522%253E%27%2Btweet%2B%27%253C%252Ftextarea%253E%253Cinput%2520type%253D%2522submit%2522%253E%253C%252Fform%253E%253Cscript%2520type%253D%2522text%252Fjavascript%2522%253Edocument.tweet.submit%2528%2529%253B%253C%252Fscript%253E%253C%252Fbody%253E%253C%252Fhtml%253E%22%3E%3C%2Fobject%3E%27%29%3B%20window.location%3D%27http%3A%2F%2Ftwitter.com%2F%27%2Busername%3B%3C%2Fscript%3E%3C%2Fbody%3E%3C%2Fhtml%3E
To use it follow these directions:
- Copy the long
dataURI into a text editor and do a text replacement for “ook” then replace it with your twitter username. - Do a text replacement for “eek” and replace it with your password.
- Go to Tools → Preferences (or Opera → Preferences on Mac OS X).
- Click on the Search tab then click the Add… button.
- In the input box labeled Name type in
Twitter. - Type in a suitable keyword in the
Keywordfield. I usetw. - Paste in the
dataURI from your text editor into theAddressfield and click OK.
Now you should be able to type tw Tweet! and update your status on Twitter with “Tweet!”. As this is just a proof-of-concept it can be
expanded to do more such as display an error if you’ve typed in more than 140 characters among other things. I just thought I’d challenge myself to see if it
could be done.
Sep 12th 2008
→ April Fools in September
If this was on April Fools day it’d be an awesome joke. I can’t help but laugh.
(Via Haavard)
→ Fuck Off, I’ve Got Work to Do
I believe if Jeff Croft wasn’t actually pissed at Ian Hickson’s statement in an interview that the date for Proposed Recommendation of HTML 5 is in 2022 he wouldn’t have written it as if someone broke his favorite Optimus Prime toy. I don’t much care for the date either, but CSS 3 and HTML 5 are being implemented long before it’s a proposed standard.
The title is a quote from Trailer Park Boys from a character named Cyrus. Every time he gets pissed off he runs away stating that. It sums Jeff Croft’s attitude up quite well and is strikingly similar to a phrase he repeats quite a lot in his post.
iTunes 8 Store Arrow Links
Responses Closed
When this was introduced in whatever version of iTunes it came out on I thought that “feature” was superfluous and stupid. Most of the time when the links were clicked they were clicked accidentally. Thankfully they could be easily removed by going to iTunes’ preferences. Well for stupid reasons that are beyond me Apple decided to take this preference setting out of iTunes 8’s preference dialog, leaving the setting unreachable except by intermediate and advanced users of Mac OS X or Windows. Within minutes of iTunes 8’s release Mac OS X Hints released an article telling people how to remove the annoying links for Mac OS X by opening a Terminal window and typing this in:
defaults write com.apple.iTunes show-store-arrow-links -bool FALSE
Now I’m going to be uncommonly nice to Windows users here and state how to get rid of them on Windows as well. I ran a quick search and couldn’t find a quick place to find out the information on Windows, so I figured it out myself. Changing the setting is a bit more difficult in Windows. There are some requirements. You need a decent text editor because the preference file is stored with Unix line endings (LF) so Notepad isn’t capable of handling line breaks other than Windows (CRLF). If you do not have one TextEdit would do.
Make sure iTunes is closed and open C:\Documents and Settings\User\Application Data\Apple Computer\iTunes\iTunesPrefs.xml in your preferred
text editor and do a search for User Preferences. In-between the dict element that comes after the key element containing
User Preferences type:
<key>show-store-arrow-links</key>
<data>False</data>
See? I’m not mean to Windows users all the time.











