In the past, I’ve had managers who have asked me for a daily status report of all of the items I’ve worked on during the day…every single one. They essentially said if it’s not documented that it didn’t happen. With all the tools we have available to us as developers, there should never actually be a case where what we code isn’t documented. I’ve heard many people say that 10 minutes is about the amount of time you should have between source control commits, which means there should be a TON of paper trail to show for what you’re working on. The problem is how do you show this to non-technical managers? Do you give them access to source control to see commits? What if even printing out the commit log is too technical for them? At bare minimum, they’re likely using some sort of project management tool. Luckily, today we can connect source control, bug/task trackers, and project management tools together to automate “daily status reports” away forever. In this video I talk about Microsoft’s Project Server and Team Foundation Server connector that lets you do just that. Take a look.
I recently came to the conclusion that I needed a MUCH better starter project for building ASP.NET MVC applications. You see, I’m not a designer. I just don’t have those skills. I can make things look good in my head, but I can’t translate that to Photoshop and then to CSS attributes. Then one day I stumbled upon Twitter’s Bootstrap project, which is a free, open source CSS/JS framework/library that has literally everything you need to build a quality, production ready application (from a design perspective). It’s by far the most exciting project for me in a long time, as it fills the huge void and weakness that I have in building good-looking stylesheets from scratch. Then, this past week I found CodeFirstMembership - an open source membership provider, similar to the ASP.NET .mdf file in the default starter projects, but that is written using EntityFramework Code First. This…this was huge. So I decided to begin to curate all these technologies in to an ASP.NET MVC starter project to end all starter projects (ya know, if you plan to go live very soon after you start and expect folks to not throw up when they see your site).
One of the big things I’ve seen flying around Twitter lately is the question of whether or not XNA is being depricated or faded off into the sunset or whatever. I can understand how if you base your entire career on a single technology this might be scary, but remember that XNA isn’t available in METRO UI apps only, and that’s because Metro UI uses DirectX 11, and the current XNA implementation uses DirectX 9, which is still supported by the standard desktop view. This means that XNA is still very much alive and well in the Desktop, and I would say thriving. XNA isn’t going away anytime soon, and here’s why: Continue Reading…
So much has come out this week at //Build/ that it’s hard to keep track of everything. For developers, the big thing is the first preview of Visual Studio 11 and the new SDKs and tools that go along with it. As you download the tools from dev.windows.com or your MSDN subscription, you may or may not have noticed that some of the new features come straight out of the Productivity Power Tools that are available TODAY from the Visual Studio Plugin Gallery. So, if you’re trying out the new Windows 8 dev build and like what you see, you may want to also check out the power tools. It’s no ReSharper, but it does have some cool features that’ll help you navigate your solutions!
Today at D9, Microsoft opened up about Windows 8 with a bang. Not only does does Microsoft FINALLY have a viable operating system for tablets/slates, but they also announced that the gorgeous new Windows Phone 7/Xbox 360 UI will heavily leverage HTML 5 and Javascript. This really comes as no surprise since IE9 has hardware acceleration and can push beatuful HTML 5 graphics just like a desktop application. To coincide with this, Microsoft has also announced that their wildly popular Professional Developer’s Conference (PDC) will now be rebranded to Build. The new UI looks absolutely gorgeous and I can’t wait to play with it live on a tablet. Take a look at the video to see it in action:
Recently I’ve been working on an big Android application where I work set for release later this year. It’s going to be a great help to employees and distributors in the field letting them do all sorts of things they normally need to be at a computer for. I’m using my Macbook Pro to do development as it’s easier to not have to switch back and forth from OSX to windows as I’m building application features in parallel in an effort to release simultaneously (which may or may not be smart). One thing, though is that we use Microsoft’s Team Foundation Server at work, which is, of course, a Microsoft product. Luckily they bought TeamPrise somewhere along the line and now there’s a great Eclipse plugin (unfortunately and frustratingly, only available to Bizspark or MSDN Ultimate subscribers – license key required upon install) to let you check in/out right from within Eclipse. However, I had one problem that I couldn’t seem to figure out until I accidentally seemed to find something that works… Continue Reading…
One of the best ways to learn how to code well is to read code and write it (imagine that!). Luckily, with Visual Studio, Microsoft has graced us with tons of Starter Kits that are free to use. Starter Kits are pre-packaged project templates that are usually completed websites that you can build on top of or read to learn from. Now, with WebMatrix and its integration with Visual Studio, you have even more ways to get started fast on your side projects with tons of open source applications to learn about MVC, OAuth, and more. However, you’ll be hard-pressed to find a starter kit for a tier-based pricing model Software as a Service (SaaS) web application. With the rise of cloud computing platforms like Microsoft’s Azure, and SaaS, it’s always beneficial to know how to scale a solution not only from a technical aspect, but from a consumer aspect as well. Wouldn’t it be nice if there was a starter kit for SaaS applications? Continue Reading…
I’ve been working with MVC3 and Razor lately. It’s been absolutely great. I’ve not used MVC to build a production app until now, and it’s been killer fast building things out quickly. Previously, I’ve just used regular old objects like are in the starter projects to play around with my applications as the “M” in my MVC. With these, you can use the System.ComponentModel.DataAnnotations to decorate your classes with validation, labels, datatypes, field types and more that are used in MVC views to dynamically create your UI. Now, though, I’m building a pretty big application that I’ll be putting out for a longer term, and will use SQL Server for the back-end with Entity Framework 4.0 entities as my model. The problem with this is that entity models are dynamically generated, and don’t contain annotations of their own. Continue Reading…
Have you heard? HTML 5 is out! (er, is coming, depending on how you see things). It’s still a work in progress, but you can still use HTML 5 now with many of the new browsers. What does that mean for us as developers? New things to learn, of course! New techniques, new designs, but mostly: new tags! There are lots of new tags in HTML 5 that are specific to headers, footers, navigation, and more. Luckily, web developer Josh Duck has made an awesome interactive Table of the HTML 5 Elements. Continue Reading…
Recently, I had a problem with SharePoint 2010′s people search. It stopped working, particularly after the network guys set us up with auto-forwarding http:// requests over to https://. Once that was set up, it broke the search. We couldn’t get any results to come back for the regular search or people search. Turns out you need to point SharePoint 2010′s search crawler not only to your content, but also use the proper protocol. If you force SSL, then you need to change the protocol accordingly. Here’s how. Continue Reading…
A couple days ago I woke to receive this in my inbox:
Congratulations! We are pleased to present you with the 2011 Microsoft® MVP Award! This award is given to exceptional technical community leaders who actively share their high quality, real world expertise with others. We appreciate your outstanding contributions in Internet Explorer technical communities during the past year.
It’s a huge honor for me to be called a Microsoft MVP and a special thanks goes to Carter Rabasa of the IE9 team for my initial nomination. Since I started coding back in 2003, I’ve followed and got inspiration from heavy hitters like Rick Strahl, Phil Haack, Scott Hanselman and Jon Skeet, who have all held the MVP award, and it’s awesome to be able to join them. Here’s what Microsoft’s MVP site says about what an MVP is:
Do you have Stopping Point Syndrome? I didn’t know that I had it until I read a recent post on Programmers.SE about how someone just couldn’t find a stopping point and would work into the night or until he passed out. In essence, it’s when you want to wait until you get to a good stopping point, but you just can’t seem to get there. It’s a real problem, and one that many of us have faced before. Here’s how I’ve helped curb this problem in my own development life and used this need of a stopping point to my advantage. Continue Reading…
Visual Studio 2010 SP1 Beta is out for MSDN subscribers, and brings great new features for everyone – not to mention SharePoint development. If you’ve used Intellitrace to step backwards through your code to debug tricky situations that require more context, you know how awesome it is. Unfortunately, that’s not available for x64 bit and SharePoint projects currently. Finally, SP1 bring that functionality to us along with a lot more. Here are some of the highlights via Jason Zanders’ Weblog: Continue Reading…
I recently just migrated my blog from Tumblr to my own WordPress install. So far, things have been great. I love having everything in one place – from my blog to my CV. The only problem with this, however, is that if something should happen, I’d lose everything! That’s not a good place to be. Ever. Even if it’s your own personal website, just think about how many hours it would take to just get the site with your original design back up. Not to mention all the content produced over the years. What options are there for backing up WordPress? The good folks at ChurchIT gave me a great place to start (and other great backup tips not mentioned here). Continue Reading…
If you’ve done any web development before, you’ve probably had to work with JavaScript. It’s the secret sauce that makes the web come alive and has in recent years gone from a language that was looked down upon as 3rd rate to one that is taking the web by storm. With AJAX and JQuery the key pieces of interactive web design, and users becoming more performance-demanding every day, it’s important to know how to tune your site for speed and efficiency. Luckily, Nokia (yes, the old school cell phone company!) has a great cheat sheet to help prune JavaScript and make your code scream. Continue Reading…
I recently gave a talk at the local .NET User Group in Kingsport, TN on SharePoint 2010, generally what it is (for those that have never used it), and all of the features that are available to developers in this newest version. Right off the bat, the best thing about it is that you can develop for SharePoint 2010 using your Windows 7 machine, which is a huge improvement over 2007 (It forced you to develop on Windows Server! *shudder*).
If you didn’t get a chance to attend, I’ll try to give you in one paragraph why I’m excited about using SharePoint 2010 as a development platform. Basically: it makes my life as a developer not suck as bad. Like Visual Studio 2010 generates code for me that I would have had to write myself 5 years ago, SharePoint 2010 gives me CRUD screens, reports and deep analysis on ALL of an organization’s data, gives me a way to offload tedious one-off requests from uses by empowering them with SharePoint Designer and SharePoint Workspace. Generally SharePoint 2010 makes my life as a developer simpler, so I can focus on writing code that provides direct business value and makes money! Continue Reading…
One of the first applications that I write for a new platform to learn the ropes is an RSS reader. That rule holds true for Windows Phone 7. The great thing about the Windows Phone 7 SDK and the .NET 4.0 platform is that everything you need to work with RSS or any other syndication feed is ready for you right out of the box! With Android development, you need to parse the XML and return values yourself. For just reading an RSS feed, it’s a nightmare. The references don’t, however, show up in Visual Studio 2010 automatically, so you’ll need to add them manually. I’ll go over it all in this guide to programming RSS feeds in Windows Phone 7. Continue Reading…
When developing SharePoint 2010 Applications, you must have an instance of SharePoint 2010 installed on the same machine to both allow for access to SharePoint .dlls as well as for easy deployment and debugging purposes. One of the problems with this is that SharePoint 2010 has always been solely supported on Windows Server operating systems. With SharePoint 2010 you can now install and develop on Windows 7 (x64 versions only)! Continue Reading…
SharePoint is a configuration nightmare. There are so many settings that the more configuration settings you learn, the more you learn there are more settings that you’ve not even discovered yet. For reporting, and specifically for me, running reports under an Issue Tracking site, SessionState must be turned on for the SharePoint 2010 web application. If you don’t, you’ll get the error:
“This report failed to load because session state is not turned on. Contact your SharePoint farm administrator.”
I love CodeRush. When I was looking at a productivity plugin for Visual Studio, I basically had two options: CodeRush+Refactor! Pro or ReSharper. I eventually picked CodeRush for the visualizations, code-from-scratch productivity boosters and templates, and extensibility. As with anything, it takes some getting used to the shortcuts inside CodeRush to really become effective using it. Here’s a link to a downloadable and printable cheat sheet with all of the most-used shortcuts for CR and Refactor!
I recently started doing an evaluation of JetBrains’ ReSharper and DevExpress’ CodeRush. Both are developer productivity tools for Visual Studio that give you code templates (shorthand notation that pumps out full sections of code), refactoring tools, code metrics and analysis, and much more. I had been contemplating getting ReSharper (R#) for a while now as it seems to be by far the most popular. However, recently I attended a presentation at a local user group by Gary Short, a Microsoft MVP from Scotland who actually works at DevExpress and told me about CodeRush. As I looked it up, I saw great reviews of it across the board to the point that many R# devs were making the switch. As I looked more into it, I saw solid community support (headed up by Rory Becker), and that CodeRush was an great platform to write plugins if I so chose later on.
With that said, I’ll be writing my experience and logging helpful sites and tips that I find out as I go along with my evaluation of CodeRush. Is there anything you ReSharper guys want me to look into? Things that I should be aware of?
One of the most annoying things that I had to face when I got my Android phone was the calendars. Android uses Google as the service behind email (gmail) and its calendar. I, like many of you, use Outlook as my primary calendar, since it has all of my meeting requests built-in with it. In Android, the Corporate Calendar app lets you connect to the Exchange calendar, and the regular Calendar app connects to Google’s service. Sure, fine, right? but what happens when you have conflicting appointments across your personal Google calendar and your outlook calendar? What if you want everything all in one place so you can just put up one calendar widget on your Android desktop? Well, the answer my friends is Google Calendar Sync. Continue Reading…
Math is important. No, really! I’m not just talking about that 2+2=4 stuff. I’m talking about the big stuff. The Cal III type stuff. The problems that keep you up all night long. The problems where the professor gives you 5 problems on Monday to do in a week and you say “Oh, shoot, 5 problems? That’s it? Pfft. I’ll start next Sunday night at 9PM because Halo 3 just came out!” Then you pull an all nighter on Sunday and barely get four of the problems done. Yea, I may or may not know about that first hand. But really, I ask, why are you learning all this? Are you really going to need all these crazy formulas for programming and software development? Can’t just pull them out of a math book later? It’s just a formula, right? To be honest, there’s probably a 2% chance you will ever need this kind of math as a software developer. Unless you go into graphics programming or something like that, you’ll likely never need it, and even then you’ll have references in the real world. So why do I still think (really) hard math as absolutely essential to being a great developer? Allow me to explain…
From a broad and practical point of view, math IS software development. Math problems are solved exactly like you have to solve software problems in the real world, and there are direct parallels between math and programming. Let’s go over them: Continue Reading…
One of the things I say a lot is the quote “Incentives make the world go round”, and that, my friends, is true. So why do I develop for the Android platform and not the iPhone? The iPhone certainly has that “cool” factor about it. I even own a MacBook pro and have access to an iTouch for testing, so I have everything I would need. When I was looking for a new phone last November, one of the top priorities for me the prospect of developing and releasing new applications for my device of choice. So why then didn’t I pick up an iPhone? Let me explain…
There were three major phone platforms out in the Winter of 2009: iPhone, Windows Phone, and Android. I knew iPhone would currently be the most popular device to release an app for. Second would be Android, since its market share was (extremely) rapidly increasing. Then, there was Windows Phone, which showed great promise with Zune integration (I LOVE my ZuneHD). There were a few different things that I had to consider when I was picking out a phone (and ultimately, a platform), but let’s focus on the ones that matter from a software development and business aspect:
Current and Future Popularity
iPhone was definitely leading the pack at the time, but Android was passing it up quickly, and is doing quite well now. Windows Phone looked great, but was late to the party for me to consider it at the time.
Interfaces
No lie here, iPhone has an amazing interface, partly due to no (and now minimal) multitasking. Android is good, but could use some work, partly because screens are different across devices, so apps have to be built in such a way that all devices have a great experience.
SDK
The SDK for both are great. There are lots of APIs to hook into and lots of functionality to leverage (I wrote a very light iPhone app for version 2). The documentation for iPhone is good, with several videos explaining the development process. However, Android’s developer center is absolutely top-notch. They have videos and in-depth tutorials that are the best I’ve seen in a long, long time. The best part, however, is that Android’s developer forums (used for Q/A) is actually officially integrated as a part of StackOverflow. That community is amazing and very quick to help you understand anything you’re banging your head against.
Development Language
If you’ve ever switched from Java to C#, or vice versa, you’ll know they are very, very similar. Windows Phone is C# (.NET) based. Android is Java based. Both are popular, solid languages with tons of support and lots of community involvement. iPhone development uses objective-C, an extremely popul…wait…objective-C? Oh, you didn’t say C? Not even C++? So, wait, wait…is it anything like those? The syntax is totally different you say? Oh…well, looks like you had better start your steep learning curve so you can get that app out the door. Also, you better ask your boss for an extension, because this could take a while. Or, you could always write for the iPhone using a mixture of .NET and the convolutedness of the the way objective-C and development on the iPhone is structured. Good luck with that.
Marketplace
The marketplace on both are good…once you get and stay there. The iTunes store feels like the cheapest app is $0.99, whereas the norm for Android apps is Free. So, if you’re after making money, iPhone is probably the way to go. Of course, you have to be approved…and stay approved…and Apple has to not change their mind. You see, on Android, Google and the community builds in functionality like tethering, and cool apps like the Google shopping app. Also, you have community options like ShopSavvy. Just because ShopSavvy’s functionality is the same as one of Google’s apps, Google just tries to BUILD A BETTER APP, whereas Apple simply bans you from the marketplace altogether and causes your app to shut down. From Apple’s perspective this reduces competition, provides a more consistent interface, and cleans out duplicate apps (read: anti-capitalism). From an app developer’s business point of view, this increases risk DRAMATICALLY. Would you be willing to invest hundreds of thousands of dollars into an app, only to have Apple steal your idea, integrate it, and then kick you out? Tough luck, chump. Android is the only sure bet that you will 100% have a chance.
So that, in a nutshell, is why I write for Android and not the iPhone. Or, it could just be that I have a Droid and AT&T service is terrible where I live. You know what they say, “Incentives make the world go round”.
using System.Text; using System.Net;using System.IO; HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(URL);myRequest.Method = "GET";WebResponse myResponse = myRequest.GetResponse();StreamReader sr = new StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8);string result = sr.ReadToEnd();sr.Close();myResponse.Close();
//Now, once you have this, perform the search on result string int stringFound = result.IndexOf("My search string");
The first real goal for the Android app was getting news updates into the app. One of the main goals of the app is to be able to get up-to-date information that mirrored that of the harvesttn.com website. As you probably already know, content is typically served up using an RSS feed in today’s world. With that in mind, the first real piece that I needed to write for getting news notifications was to build a way to consume and display an RSS feed.
I copied over the code, and basically used the MessageList class as a template for my NewsUpdates class in my app. Not much needed to be changed, except for the way it loads the feed. The code on IBM’s site grabs a feed from a hardcoded URL in the FeedParserFactory, and out of the box only contains a .getParser(ParserType type) method, passing in what method you want to use to parse the XML (I used Android-SAX). I figured that I may need to reuse the FeedParser again, so I overloaded the getParser method to pass in not just the type, but also a feed url, as you can see me using in the code below.Once I did that, the rest of the code is just getting and displaying the information that the FeedParser got for me. first, you just get the items out of the parser into something that you can use. Here’s a simple way to get and parse the RSS feed, modified from the ListActivity in IBM’s code and simplified for easier use. Here’s a simple way to get and parse an RSS feed once it is modified (read the whole article if you’re cutting corners):
/*In a ListActivity class, this is in a loadFeed(ParserType type) method. Of course, this isn’t really necessary to read a feed. Only down to the “List<Message> messages = parser.parse();” line is necessary. You can then iterate through each message and call standard getters for each of the items to get the Title, Description, etc.*/
//Get a new FeedParser from the factory.
//Pass in the type of library you want to
//use as well as the URL of the feed
//you want to grab.
FeedParser parser = FeedParserFactory.getParser(type, getString(R.string.News_RSS_Feed));
//Parse the feed into the Messages so you can
//use the feed data more easily in your app.
List<Message>= parser.parse();
String xml = writeXml();
//Iterate through each RSS entry and grab the titles to use as the content in the ListView
List<titles>= new ArrayList<string>(messages.size());
for (Message msg : messages){
titles.add(msg.getTitle());
}
//Add the ListView via an ArrayAdapter
ArrayAdapter<string> adapter =
new ArrayAdapter<string>(this, R.layout.row,titles);
this.setListAdapter(adapter);
DONE! Simple as that. RSS is a great way to integrate content into you mobile application and have a similar (and often better) experience to the web version. The original IBM post is located below, where you can also download the full source. This code was writted for Android SDK release 3, but it worked perfectly with the 7th release (Android 2.1). Remember that when you copy over the code into your project, ensure your manifest file properly registers all the appropriate activities. Otherwise, you’ll get a force close.: http://www.ibm.com/developerworks/opensource/library/x-android/index.html
For starters, let me give you some background on starting this blog series. I spend a lot of time looking things up and learning. The downside? I forget things. So, this will be a win/win. I can write things I find out down here so that I don’t forget them AND since Google will crawl this site, I will be more likely to re-find it in the future!
I’m going to be writing a miniseries on Android App development. My home church is Harvest Community Church (or Harvest for short) in Kingsport, TN. Like many churches, you can get updates, listen to sermon recordings, watch videos, and the like. The problem for people like me who are very mobile oriented, is that I rarely “go” to a site from a real web browser anymore. There’s an “app for that” on my phone that aggregates all that information and brings it straight to me. My calendar, contacts are all synchronized with Facebook and Twitter and my information is all brought to me via Google Reader and the magic of RSS.
The problem is that trying to stay up-to-date with what’s going on at the church from day-to-day is hard! Nobody wants to have to spend 15 minutes swyping the bulletin calendar into their phone. This is the motivation behind HarvestDroid and what I want eventually to be an open source ChurchDroid template for any church to use (replacing RSS/Photosharing/Content addresses and locations).My initial requirements and posts will be:
A Tab menu to divide the following sections
News Tab
This is a list of announcements
Radio Tab
Sermon list
Videos
Open media with music player intent
Open media with embedded player
Visit! Tab
Phone call integration
Email integration
Google Maps Directions/Navigation Integration
Future Enhancements
Android notifications of updates
Social integration
Facebook?
Foursquare?
UI Skinning (Gotta fancy it up, right?)
Offline Access/Caching (This targets 3G/Media, so I assume the app to be connected 99% of the time you use it)
Add events to the Google Calendar app
So, as of now, that seems like a nice list. What do you think? If you had a mobile app for your church, what would you want to help you stay connected?
I’m pretty lucky. I knew that I wanted to do something in computers since I was in the 5th grade. My class got an old (new) computer with a green screen, some kind of math/vocabulary rabbit game, and my favorite…BASIC (the programming language). Yes, “10 Print” and all. I wrote my first video game on that machine – Magic 8 Ball. It was pretty simple. You entered your name and your gender, and then, if you were the girl that I liked in class, it would tell you who you would end up kissing me by the end of the day. Ahh, memories. How did I learn how to code that? I can’t even remember. Was it learning from class? Was it trial and error and figuring it out? What was most important?
Every year, nerds from all over the world come out of the woodworks to tell their favorite pun to all the folks of Earth and Tatooine they meet. That day, my friends, is May the 4th. You see, “Fourth” sounds like “Force” if you say it with a slur and a mouth full of Wookie Cookies. As you know, I’m big into tech, and that passion and intrigue, for most people like me, came from seeing Star Wars at a young age. We saw all that was possible by technology, from flying starships to chopping aliens’ arms off with lightsabers to having a real heart-to-heart conversation with a trash can that beeps. So today, think back to your childhood and about what your passion is. What show did you watch or event did you experience that made you want to go out and conquer the world as a developer, a teacher, a pharmacist, or an evil Sith lord that’s more machine now than a man?
Can someone please explain to me why the immigration law in Arizona promotes race discrimination, while the drinking age limit law does not promote age discrimination? If I’m walking down the street drinking a case of beer, I should be over 21 (according to the law). Likewise, if I’m walking down the street in America, I should be be here legally (according to the law). Otherwise, in both cases, I’m breaking the law and am a criminal. Similarly, in both cases, if I have proof of legality, there should be no problem if an officer stops me and asks for that proof. If I cannot provide that proof, and an investigation shows I indeed committed a crime (a crime is when you do something against the law, like…you know…enter a country without going through proper channels…even if you’re a “good person”), then I should face the consequences of my actions. Otherwise, by law, I am free to go. If I have my proof on the spot, it takes what? Ten seconds max? Witch hunt indeed. Am I totally off my rocker here?…because that just seems like common sense.
The photo above was taken around in 2008 in the Smithsonian Air and Space Museum in downtown Washington, DC. Sometime later that year, I got a Flickr mail that my photo was a finalist to be featured on Schmap, which it ended up being! (Honestly, I don’t really like Schmap because it feels too Mapquesty – just my opinion, though)
Schmap is a leading publisher of digital travel guides for 200 destinations throughout the United States, Europe, Canada, Australia and New Zealand. More than 90 million Schmap Guides have been downloaded since first release in March 2006: this phenomenally popular series can also be browsed online, with versions optimized for iPhone and Nokia users
Check out this post I wrote for Mountainographers, a photography blog I co-author with Coby Addison. This post is on the law as it applies to photography and who and what you can and can’t take pictures of, and how to find out!
I took this photo of my fiance, Nikki. For some reason, I get lens flare…a LOT with my little 55mm. I’m not sure if they make lens hoods for them (or if that would even fix the problem), but I need one just because of how awesome they make your gear look (second only to a battery grip). Only problem though is the 50mm is super tiny and a hood would just look puny.
I really love photography. I know everyone with a decent camera thinks they’re a photographer, but I’ll be the first to tell you that I’m not. I just think it’s fun. The main thing that I love about it is that there’s so much to learn, but at the same time there is so much room for creative decisions. Between aperture, shutter speed, ISO setting, flash/no flash, angles, rule of thirds, then everything you can do in your editing software (for me, it’s Lightroom), there are endless possibilities! Even the pros that know everything there is to know about photography can still experiment. It’s, like music, an intersection of creativity and technology, which is exactly where I love to be.
One of the first things I noticed about Tumblr is that SEO sucked. I mean really. Coming from WordPress, which has awesome plugins to optimize your site for search engines, this was really tough to get used to. Luckily, I found a post on this site that gives some quick tips on getting your Tumblr blog a little more visibility.
This is absolutely true. After carrying my own equipment from show to show and hosting our own with other guest bands, I’ve come to realize the sheer amount of work that goes into every show that we saw and played. Next time you go to show, find someone from the stage crew and say, “Hey man, it was an awesome show tonight. Thanks.”
One of my favorite movies growing up was The Land Before Time. It’s about the adventures of a group of young dinosaur friends who are trying to get to Ever Green Valley so they never have to worry about volcanoes or asteroids or T-Rexes or rush hour traffic ever again. The main character though, was a brave little brontosaurus named Little Foot…or so we thought! It seems that “Brontosaurus” is incorrect. See, the story goes that back in the 1800s, this guy was putting together dinosaur bones, which is kinda like a jigsaw puzzle but with more awesome. He successfully put together the body of an apatosaurus, but put the wrong head on top! When he stepped back to admire the Apatosaurus, he realized it looked like a new species!! “I’ll call this thing a brontosaurus!”, he probably said! Of course, it wasn’t a new species, just misplaced bones, but the lovable, cuddly brontosauruses continue to steal our hearts to this day. Personally, I’ll probably always call them brontosauruses, because I’ll always believe Little Foot was real, just like the Ninja Turtles…
A lot of times growing up, there comes a point when you want to design the house you’ll live in when you’re older. So you pull out a sheet of paper and start drawing…and drawing…and drawing.
By the time you’re done you end up with a 3 story house complete with a swimming pool, lazer fence, a guest room for each of your best friends, a movie theater, 10 car garage, helicopter pad, and war-room to keep all of your Batman gear. No matter what my dream home looked like at the time, one thing always was a requirement – a secret passageway.
You’ve seen them before in the movies, you tilt a candlestick and the fireplace spins around, taking you to a room only known to you and a select few. It could be a fireplace, or a bookcase with your favorite book as the trigger, or a rug covering a secret staircase requiring you to sing the chorus of a Rod Stewart song in order for the door to unlock. No matter how elaborate, you have to admit, secret passages and hidden rooms in general are just plain awesome.
I was talking to one of my friends a few months ago about how realistic it would be to put one of these bad boys in a house. Is it feasible to put a secret doorway in a home that’s already built? Is it something you plan for? Luckily, there are plenty of companies to help you sort it all out and even build and install your own custom or pre-made hideout portal. What are your wildest hidden room dreams?
Writing software can be both a job and a hobby for many of us, and we all have projects sitting out there that we start and never finish. Some of them, however, are farther along or more useful than others. When we remember that we need to finish a project, whether at work or at home, you can use these tips for getting things done immediately to get back to your life!: Continue Reading…
I can’t say enough good things about this blog. I’ve learned about so many great tools from them to help me get around my computer and write software faster that I should seriously consider giving them a hefty donation.