How about that? I went and tagged a few of my entries because I never can find the useful content hidden in my friends-only posts. (Since those posts don't show up in search results.)
So now I've got a spiffy new friends-only tag. As a test, I logged out of LJ and went to my tags page, and the friends-only tag didn't even show up. Interesting! Even the tag itself is scoped to friends-only.
My friends can access the tag, but the general public doesn't even know the tag exists, and wouldn't know about those posts in this blog.
So now I've got a spiffy new friends-only tag. As a test, I logged out of LJ and went to my tags page, and the friends-only tag didn't even show up. Interesting! Even the tag itself is scoped to friends-only.
My friends can access the tag, but the general public doesn't even know the tag exists, and wouldn't know about those posts in this blog.
I use Foxmarks to keep different computers' bookmarks sync'ed to each other. I have one set of bookmarks for use on home computers, and another set for use at work computers. (I also use delicious for low usage bookmarks I know I want available everywhere.)
With Foxmarks, you can sync your bookmarks to their servers, or you can sync to your own webdav server. I prefer to host my own stuff, so I sync to my own webdav server. The bookmarks are stored in JavaScript's json file format.
But, that doesn't give me the option to browse to the server and easily see the other set of bookmarks. (If I sync'ed to Foxmarks' servers, then I could see them at my.foxmarks.com if I login with my other username.)
What's a Pythonista to do? Write a script that displays the bookmarks as URLs on a webpage! Sweet! Now I host my own repository for my bookmarks, and they're available online in case I need to see the other set's bookmarks. Here's the script:
#!/usr/bin/python
# foxmarks_reader.py by David Blume
import urllib
import simplejson # http://www.undefined.org/python/
import types
urls = ( ('Home Computer', r'http://user:pwd@url.com/fm/foxmarks.js on'),
('Work Computer', r'http://user:pwd@url.com/fmw/foxmarks.j son')
)
def do_insert(folders, command):
if 'nid' in command:
args = command['args']
if args.has_key('ntype'):
if args['ntype'] == 'folder':
my_folder = []
folders[command['nid']] = my_folder
if command['nid'] != 'ROOT':
parent = folders[args['pnid']]
parent.append((args['name'], my_folder))
elif args['ntype'] == 'separator':
parent = folders[args['pnid']]
parent.append('---')
else: # 'bookmark'
parent = folders[args['pnid']]
parent.append('<a href="%s">%s</a>' % (args['url'], args['name']))
def print_folders(folders, indent):
for item in folders:
if type(item) == types.ListType or type(item) == types.TupleType:
print '%s%s' % (' '*(indent * 4), item[0].encode('iso-8859-1', 'replace'))
print_folders(item[1], indent + 1)
else:
print '%s%s' % (' '*(indent * 4), item.encode('iso-8859-1', 'replace'))
if __name__=='__main__':
print "Content-type: text/html; charset=ISO-8859-1\n\n"
print '<pre>'
for url in urls:
print '<h2>%s</h2>' % url[0]
sock = urllib.urlopen(url[1])
json = simplejson.load(sock)
sock.close()
folders = {}
for command in json[u'commands']:
do_insert(folders, command)
print_folders(folders['ROOT'], 0)
print '</pre>'
With Foxmarks, you can sync your bookmarks to their servers, or you can sync to your own webdav server. I prefer to host my own stuff, so I sync to my own webdav server. The bookmarks are stored in JavaScript's json file format.
But, that doesn't give me the option to browse to the server and easily see the other set of bookmarks. (If I sync'ed to Foxmarks' servers, then I could see them at my.foxmarks.com if I login with my other username.)
What's a Pythonista to do? Write a script that displays the bookmarks as URLs on a webpage! Sweet! Now I host my own repository for my bookmarks, and they're available online in case I need to see the other set's bookmarks. Here's the script:
#!/usr/bin/python
# foxmarks_reader.py by David Blume
import urllib
import simplejson # http://www.undefined.org/python/
import types
urls = ( ('Home Computer', r'http://user:pwd@url.com/fm/foxmarks.js
('Work Computer', r'http://user:pwd@url.com/fmw/foxmarks.j
)
def do_insert(folders, command):
if 'nid' in command:
args = command['args']
if args.has_key('ntype'):
if args['ntype'] == 'folder':
my_folder = []
folders[command['nid']] = my_folder
if command['nid'] != 'ROOT':
parent = folders[args['pnid']]
parent.append((args['name'], my_folder))
elif args['ntype'] == 'separator':
parent = folders[args['pnid']]
parent.append('---')
else: # 'bookmark'
parent = folders[args['pnid']]
parent.append('<a href="%s">%s</a>' % (args['url'], args['name']))
def print_folders(folders, indent):
for item in folders:
if type(item) == types.ListType or type(item) == types.TupleType:
print '%s%s' % (' '*(indent * 4), item[0].encode('iso-8859-1', 'replace'))
print_folders(item[1], indent + 1)
else:
print '%s%s' % (' '*(indent * 4), item.encode('iso-8859-1', 'replace'))
if __name__=='__main__':
print "Content-type: text/html; charset=ISO-8859-1\n\n"
print '<pre>'
for url in urls:
print '<h2>%s</h2>' % url[0]
sock = urllib.urlopen(url[1])
json = simplejson.load(sock)
sock.close()
folders = {}
for command in json[u'commands']:
do_insert(folders, command)
print_folders(folders['ROOT'], 0)
print '</pre>'
- Mood:accomplished
It's thanks to danelope's tag tip (some old post I can't be bothered to find) that I'm subscribing to "Alt Text" at YouTube by way of tags.
http://youtube.com/rss/tag/+lore+sjoberg+w ired.rss
http://youtube.com/rss/tag/+lore+sjoberg+w
As an experiment, I'm unfriending people at Twitter if they use LoudTwitter to post their daily tweets here. I actually like seeing their daily tweets on my friends page better than seeing individual tweets in my feed reader all day long.
Some people tweet way too much. (Here's a one-day LoudTwitter aggregation from Ben Templesmith.)
Some people tweet way too much. (Here's a one-day LoudTwitter aggregation from Ben Templesmith.)
- 09:36 2 * (WRT54G + DD-WRT) = Awesome Home WDS #
Hello, there. Work is keeping me busy. Also, some self-enforced discipline is keeping me away. You see, I've installed 8aweek, just to gather metrics for my online habits. The only domain I restrict? Livejournal.
When at Disneyland a couple of weeks ago, the family went crazy shopping. Who didn't buy anything? My wife. Nothing.
The only thing I bought? Out of everything at Disneyland? A little thing called the Rogue Shadow from the Lego store in Downtown Disney. It's all I really wanted!
If you didn't see the following titles from Geneon (who are now out of business), you should, before the titles are gone too:
When at Disneyland a couple of weeks ago, the family went crazy shopping. Who didn't buy anything? My wife. Nothing.
The only thing I bought? Out of everything at Disneyland? A little thing called the Rogue Shadow from the Lego store in Downtown Disney. It's all I really wanted!
If you didn't see the following titles from Geneon (who are now out of business), you should, before the titles are gone too:
- Samurai Champloo (This could be the third series I've ever bothered to own.)
- Kamichu
- Ergo Proxy
- Haibane Renmei (And read Hard-boiled Wonderland and the End of the World)
Greetings from a nasty internet-access computer in a Best Western in Southern California!
Just want you all to know that I'm probably the only person in the world to clean the mouse ball of a hotel computer, just to check Google Reader, GMail, and LiveJournal for a single 15 minutes session. I won't have a bumpy mouse experience!
Browse browse star browse browse star logout, clear cache, passwords, everything! (Starring and delicious is for reading in depth later.)
Just want you all to know that I'm probably the only person in the world to clean the mouse ball of a hotel computer, just to check Google Reader, GMail, and LiveJournal for a single 15 minutes session. I won't have a bumpy mouse experience!
Browse browse star browse browse star logout, clear cache, passwords, everything! (Starring and delicious is for reading in depth later.)
Never post something in CraigsList's "free" category, and then logout, turn off your cell phone and go climbing for two hours.
Holy cow. There are hundreds of cheapskates out there. And they're quick!
Holy cow. There are hundreds of cheapskates out there. And they're quick!
While reading some feeds tonight, I came across this:
zannah (bottom tweet) wonders where Danelope went. Then, 20 minutes later he posts a brain dump of videos he's made note of, completely oblivious that she's sent a ninja squad in search of him.
- Mood:
amused
It's only our first beta of the product, but I'm pretty excited by VideoSpin. It's a free video editor. As a developer, it's hard to release a product, I want to wait until it's perfect, but I also want to share what I have.
I hope that VideoSpin is good enough that it'll grow into an awesome free video editor. This is our first attempt, and I think we're on the right path. (I hope so.) We're certainly listening to feedback.
I wrote a small tutorial on how to make an AMV with VideoSpin over at my site.
[Edit] Ha, ha! My little site looks slightly wrong in IE, and the official site looks slightly wrong in FireFox! It just goes to show you where we do most of our browsing.
I hope that VideoSpin is good enough that it'll grow into an awesome free video editor. This is our first attempt, and I think we're on the right path. (I hope so.) We're certainly listening to feedback.
I wrote a small tutorial on how to make an AMV with VideoSpin over at my site.
[Edit] Ha, ha! My little site looks slightly wrong in IE, and the official site looks slightly wrong in FireFox! It just goes to show you where we do most of our browsing.
I'm trying to train myself a certain key sequence. Whenever I see or type a word that I don't know, I'm trying to seamlessly do the following:
- Select the word. (Often Shift+Ctrl+LeftArrow, or use mouse if hand is already on it)
- Ctrl+C (copy)
- Windows+S (Bring focus to DQSD)
- Ctrl+V (paste)
- Shift+; (type the colon character, which tells DQSD to query M-W dictionary)
- Enter (Tell DQSD to go get it.)
I'm a long time, loyal fan of Dave's Quick Search Deskbar, from both the perspective of usability and efficient use of screen space.
What you see above is the result of the following workflow:
- Typing <Windows>+s (Brings focus to DQSD)
- Pasting "internecine"
- Typing :, and hitting <Enter> (":" says to search for the text at the Merriam Webster website.)
If I hadn't typed the colon character, it would have done a google search by default. Other frequently used search specifications are:
wik (Search wikipedia)
imdb (Search the Internet Movie Database)
/images (Search google images)
There are hundreds of other searches. But a core 5 or so is all I use. Here are some of my personal preferences in localprefs.js:
showbutton = 0;
autocomplete = true;
historylength=100;
clocklongwidth=239;
helptime = 100;
displayHelp = false;
bannerurl = ""
And here is the crucial alias in localaliases.txt:
:|mwd /p %s
The boon here is never using the mouse (if my hand isn't already on it). With (usually) two extra key presses I can get to the definition, synonyms, images, maps or encyclopedic material of the subject, whatever I want.
That may sound like a small deal, but saving the browser space from yet another toolbar, and halving my effort to achieve my goal makes my user experience significantly better.
We have a new Vista system at home. (My job is currently Microsoft-OS specific, and I've gotta dive into SilverLight and other platform specific tools.) So I'm updating some crufty old software. Currently, there's a 30-day trial version of DreamWeaver CS3 duking it out with Seamonkey Composer on the system.
I'm an enthusiast web developer. (Not designer. My sites look like crap, but they'll do.) Seamonkey isn't everything I need. DreamWeaver is more than I need, and won't be free for long.
I wish I had enough time to really compare the two!
I'm an enthusiast web developer. (Not designer. My sites look like crap, but they'll do.) Seamonkey isn't everything I need. DreamWeaver is more than I need, and won't be free for long.
I wish I had enough time to really compare the two!
Well, moving URLs. I opened my vox account with the username dlma, because that's the domain I own. But dblume is really my most transparent and discoverable online ID.
dblume.vox.com was still available, so I check my profile, and vox does indeed have a single-click way for me to move my account, and have my previous location forward to the new one.
Awesome! How easy was that? Now the question is: if I post from my new account, does it still successfully propagate to my friends' neighborhoods?
Originally posted on dblume.vox.com
If you subscribe to any of my syndicated-feeds-for-static-sites, you'll see a one-time false positive because I changed the feed's item text today.
For what it's worth (in bandwidth credits), Chuck Shepard's News of the Weird successfully returns HTTP code 304, and my daemon honors it. So we've got bandwidth green credits to sell.
But yesterday, my daemon got its first URLError -2 (Name or service not known). Geek that I am, it gave me a little thrill to see how the exception was handled, and to add a little code that'll further isolate the exception. Whee! I program all day at the office, then go home and have fun programming a little more. I'm easy to please.
For what it's worth (in bandwidth credits), Chuck Shepard's News of the Weird successfully returns HTTP code 304, and my daemon honors it. So we've got bandwidth green credits to sell.
But yesterday, my daemon got its first URLError -2 (Name or service not known). Geek that I am, it gave me a little thrill to see how the exception was handled, and to add a little code that'll further isolate the exception. Whee! I program all day at the office, then go home and have fun programming a little more. I'm easy to please.
I'd love to migrate from twitter to jaiku. With jaiku, we can reply to tweets, and they're threaded. That's basically the reason. I'd love to be able to reply to my friends' tweets.
Some other people are migrating to jaiku. Leo's reason is dumb but probably necessary, even if nobody associates TWiT with twitter. Joi Ito convinced Jim Flanagan to switch, and that's what made me give it a serious look.
There's no compelling reason for me to switch unless my community switches, too, though. So, if any of you use or start using jaiku, let me know. I'm here.
Some other people are migrating to jaiku. Leo's reason is dumb but probably necessary, even if nobody associates TWiT with twitter. Joi Ito convinced Jim Flanagan to switch, and that's what made me give it a serious look.
There's no compelling reason for me to switch unless my community switches, too, though. So, if any of you use or start using jaiku, let me know. I'm here.
favicon.ico and XMLHttpRequest both rock. They're these private little ditties that somebody made at Microsoft because it made their app more usable.
But they help everybody else, too (to put it mildly). So we all adapted their use.
I changed the design of my private blog a few days ago, so today I changed my favicon.ico accordingly. After changing the icon to a .gif file (with the supporting link tag), then reverting it to .ico (256 color), then to a smaller .ico (16 color) I still could never get IE to display the new favicon. Oh, and here's today's changes in header.php (the same line, slightly tweaked, over and over and over):
+ <link rel="icon" type="image/gif" href="favicon.gif">
- <link rel="icon" type="image/gif" href="favicon.gif">
+ <link rel="icon" type="image/ico" href="favicon.ico">
- <link rel="icon" type="image/ico" href="favicon.ico">
+ <link rel="shortcut icon" href="<?php bloginfo('url'); ?>/favicon.ico" type="image/x-icon" />
With every change I made, FireFox did exactly what I expected. IE never did. Still hasn't. I give up. Oh, my fingers hurt from Ctrl+F5.
But they help everybody else, too (to put it mildly). So we all adapted their use.
I changed the design of my private blog a few days ago, so today I changed my favicon.ico accordingly. After changing the icon to a .gif file (with the supporting link tag), then reverting it to .ico (256 color), then to a smaller .ico (16 color) I still could never get IE to display the new favicon. Oh, and here's today's changes in header.php (the same line, slightly tweaked, over and over and over):
+ <link rel="icon" type="image/gif" href="favicon.gif">
- <link rel="icon" type="image/gif" href="favicon.gif">
+ <link rel="icon" type="image/ico" href="favicon.ico">
- <link rel="icon" type="image/ico" href="favicon.ico">
+ <link rel="shortcut icon" href="<?php bloginfo('url'); ?>/favicon.ico" type="image/x-icon" />
With every change I made, FireFox did exactly what I expected. IE never did. Still hasn't. I give up. Oh, my fingers hurt from Ctrl+F5.
You know why I stopped reading News of the Weird? Because I started relying on my feed reader, and NotW doesn't export a feed for the weekly article.
Well, here's one: http://feed.dlma.com/notw.xml
Now I won't forget.
I should do the same for sbemail. [Edit] SB feeds are here and here.
Well, here's one: http://feed.dlma.com/notw.xml
Now I won't forget.
What free editor should I use for my websites?
- Seamonkey Composer (Replaces Mozilla Composer?) But I don't really want the other stuff in the suite.
- NVU
- Amaya
- Something else?
