{"id":342,"date":"2011-06-19T23:22:02","date_gmt":"2011-06-20T04:22:02","guid":{"rendered":"http:\/\/www.mageuzi.com\/blog\/?p=342"},"modified":"2011-06-24T20:51:38","modified_gmt":"2011-06-25T01:51:38","slug":"sociable-wallpaper","status":"publish","type":"post","link":"http:\/\/www.mageuzi.com\/blog\/2011\/06\/19\/sociable-wallpaper\/","title":{"rendered":"Sociable Wallpaper"},"content":{"rendered":"<p>All right, so I\u00e2\u20ac\u2122ve been teasing this guy for a little while. I think it\u00e2\u20ac\u2122s time I let the cat out of the bag.<\/p>\n<p><a href=\"http:\/\/www.mageuzi.com\/blog\/wp-content\/uploads\/2011\/06\/secret_project.png\"><img decoding=\"async\" loading=\"lazy\" style=\"background-image: none; border-right-width: 0px; margin: 0px 0px 0px -25px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"secret_project\" border=\"0\" alt=\"secret_project\" src=\"http:\/\/www.mageuzi.com\/blog\/wp-content\/uploads\/2011\/06\/secret_project_thumb.png\" width=\"607\" height=\"372\" \/><\/a><\/p>\n<p>So what is it? Put simply, <strong>it searches Twitter for desktop wallpaper, adds what it finds to your library, and then randomly sets your computer\u00e2\u20ac\u2122s wallpaper to one of the images at regular intervals.<\/strong><\/p>\n<p>I forget what, exactly, prompted me to start working on this project. I think it had something to do with the fact that there are a lot of images out there that make excellent wallpapers \u00e2\u20ac\u201c but they\u00e2\u20ac\u2122re a bit hard to find. A few websites have popped up recently that have helped with this task, but it\u00e2\u20ac\u2122s usually pages upon pages of images that takes a lot of time to sift through.<\/p>\n<p>But Twitter is a great natural filter \u00e2\u20ac\u201c people usually don\u00e2\u20ac\u2122t tweet something unless it warrants it. (Excluding things like spam or commercial accounts, of course.) So, I started working on this little program.<\/p>\n<p>At this point, it\u00e2\u20ac\u2122s a <strong>proof of concept<\/strong>. It\u00e2\u20ac\u2122s not in any sort of polished, final form. All the features work in a \u00e2\u20ac\u0153this is alpha code and may break\u00e2\u20ac\u009d sort of way. It searches Twitter for tweets with the \u00e2\u20ac\u0153#wallpaper\u00e2\u20ac\u009d hashtag, and then looks for any URLs. If one of the URLs points to an image, it pulls it down and adds it to a temporary list \u00e2\u20ac\u201c the lower \u00e2\u20ac\u0153Twitter\u00e2\u20ac\u009d section in the screenshot above.<\/p>\n<p>Selecting a wallpaper shows who tweeted it, and what the original text of the tweet was. When you mouse over a wallpaper, you also get three options:<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px\" title=\"secret_project_buttons\" border=\"0\" alt=\"secret_project_buttons\" src=\"http:\/\/www.mageuzi.com\/blog\/wp-content\/uploads\/2011\/06\/secret_project_buttons.png\" width=\"184\" height=\"134\" \/><\/p>\n<p><strong>The top button<\/strong> removes an image from your library. Because you may sometimes come across images that you don\u00e2\u20ac\u2122t particularly like, the program asks if you want to exclude this picture from ever showing up again. If you say yes, then it\u00e2\u20ac\u2122ll be added to an exclusion list that will stop it from showing up again \u00e2\u20ac\u201c regardless of who tweets it.<\/p>\n<p><strong>The middle button<\/strong> pins the wallpaper. Pinned wallpapers are images you want to keep in your library. They appear in the section on top, as seen in the screenshot above, and won\u00e2\u20ac\u2122t disappear if you restart the application. If you ever decide you don\u00e2\u20ac\u2122t want to keep a wallpaper, you can unpin it. (To indicate that it is pinned, the wallpaper will keep showing the pinned icon, even after you mouse away from it.)<\/p>\n<p><strong>The bottom button <\/strong>magnifies the wallpaper. In this view, it fills the entire upper portion of the program. You can click anywhere on the zoomed version to dismiss it. Keep in mind that you can resize the main window (or fully maximize it) \u00e2\u20ac\u201c which will also expand the size of the magnified image.<\/p>\n<p>There is also a small settings screen that you can access by clicking the button with the gear on it, in the lower right. From this screen, you can control how often Twitter is searched, how often your wallpaper should change, and what the minimum size an image should be in order to be included in the library.<\/p>\n<p>And speaking of changing the wallpaper \u00e2\u20ac\u201c it will randomly choose an image, either from your pinned list, or the images it has found on Twitter. So if you don\u00e2\u20ac\u2122t want an image to show as a wallpaper, it is best to remove it.<\/p>\n<p>A few last points: by default, a wallpaper image is named the URL it was pulled from. But you can rename it to anything you want \u00e2\u20ac\u201c selecting the thumbnail lets you change the text below it. You can close the main window any time \u00e2\u20ac\u201c it will sit in your system tray. Double click the icon to re-open the window, or right click to Exit. When you first start the program, it won\u00e2\u20ac\u2122t check Twitter right away. It will start at the next scheduled interval. You will know it\u00e2\u20ac\u2122s checking Twitter, as there will be a green progress bar in the \u00e2\u20ac\u0153Twitter\u00e2\u20ac\u009d header bar.<\/p>\n<p>I think that\u00e2\u20ac\u2122s it as far as features go. I\u00e2\u20ac\u2122m offering this proof of concept version as a way to gauge what people think of it. I have a lot of interesting ideas for where this could go \u00e2\u20ac\u201c but with both <a href=\"http:\/\/mageuzi.com\/trowl\">Trowl<\/a> and <a href=\"http:\/\/projectnom.net\/\">Project Nom<\/a> being actively developed, I don\u00e2\u20ac\u2122t want to spend a lot of time on this unless it\u00e2\u20ac\u2122s something people would actually use and enjoy.<\/p>\n<p>So if you like it, let me know! And if you don\u00e2\u20ac\u2122t like it, let me know that too \u00e2\u20ac\u201c but let me know what could be done to improve it.<\/p>\n<p>In any case, I hope you like playing with this as much as I have. You\u00e2\u20ac\u2122ll notice that there aren\u00e2\u20ac\u2122t too many #wallpaper tweets that actually link directly to an image, so if you have any wallpapers you can share with a #wallpaper tag on Twitter, please do! And I\u00e2\u20ac\u2122ll do the same.<\/p>\n<p>Enjoy!<\/p>\n<p><font size=\"3\"><a href=\"http:\/\/mageuzi.com\/programming\/TweetWallpaper.exe\">TweetWallpaper<\/a>       <br \/><\/font><font size=\"1\">Proof of concept. Requires .NET Framework 4. 505KB.<\/font><\/p>\n<p><strong>Update: <\/strong>Something like this doesn\u00e2\u20ac\u2122t really work unless lots of people contribute their favorite wallpapers. So, to that end: <a href=\"http:\/\/www.mageuzi.com\/wallpaper\/\">you can now upload your own wallpapers and tweet them<\/a>!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>All right, so I\u00e2\u20ac\u2122ve been teasing this guy for a little while. I think it\u00e2\u20ac\u2122s time I let the cat out of the bag. So what is it? Put simply, it searches Twitter for desktop wallpaper, adds what it finds to your library, and then randomly sets your computer\u00e2\u20ac\u2122s wallpaper to one of the images [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[33],"tags":[7,12,103,61],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/posts\/342"}],"collection":[{"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/comments?post=342"}],"version-history":[{"count":4,"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/posts\/342\/revisions"}],"predecessor-version":[{"id":346,"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/posts\/342\/revisions\/346"}],"wp:attachment":[{"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/media?parent=342"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/categories?post=342"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.mageuzi.com\/blog\/wp-json\/wp\/v2\/tags?post=342"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}