Monday, March 3, 2014
Lately I've been feeling a positive change in my personal life and career. For the past few weeks I've been going to the gym almost every weekday and I feel like I can focus more than I usually do. I say that, because I've been able to spend slightly more time on my personal software project, without sacrificing my sleep. As for work, I feel I've reached a point where I am now trying to get a deeper understanding of the tools and techniques that I'm using, instead of just searching around for a quick answer to a current problem. In essence, I feel like I have this newfound momentum to do more with the same amount of time. Now, I feel like I need to lay things out again and have some clear cut goals to work towards, for fun and personal growth.
I'm calling it Date Night right now, because that's the most descriptive title. To put it in the most dry terms, I'm creating a database of date ideas that you can use to help you decide where to take someone on a date. It's an ASP.NET MVC 5 application (C# source code) with Entity Framework 6 using the Code First approach. So far, I have some basic models and views built, but nothing too complex. This is where most of my energy will be focused. I've always had trouble thinking of things to do or places to go for a date night, so why not summon the power of friends, family, and complete strangers!
I started this project a long time ago with the intention of making it a quick and simple way to make balanced teams for soccer games based on player ranking. I started okay, but then I lost interest, because I approached the idea the wrong way. I thought about making it into a multi-sport team ranking system with leagues, games, and other stuff that could be considered features rather than the core functionality of the product. When I think that far ahead without setting specific tasks and no feedback in sight, it just seems so overwhelming. In short, I was disorganized in my approach. Now, I'm thinking about reviving this, but taking a more thoughtful approach to the design. Regardless, this will be a project I'll work on when I'm tired of my main project.
My personal website is bare and naked. I might just use this blog as my personal website and call it a day. I'll need to figure out what I'm going to do about that, but I do want to make a single place for me to write about what I'm working on.
I spent a lot of time learning Haskell and playing with it one summer, and I remember being fascinated by the functional programming paradigm. I want to get into it again, so I was trying to figure out how I could start playing around with it, and I thought, why not try this Project Euler I've heard about and use Haskell as my language of choice. Haskell is well suited for solving anything mathematical, so I figured it would be a good fit and I was right. I started on February 17, and so far I've solved three problems, which is keeping me on track for solving at least one problem a week. The problems don't take a week to solve, I just don't want to devote that much time to them, because I find that once I start trying to solve a problem, it's hard to stop until I solve it. This is the programmer's dilemma, knowing when to stop and take a break in order to allow your brain to sort through everything even when it feels like you're so close to solving it. In reality, you may not be close at all and it will be beneficial to look at the problem with a fresh thought process.
I can't promise anything on consistency, but my goal is to try and accomplish at least a weekly posting. I'll write about any kind of interesting development issues or insights I've come across in my personal or work projects. I won't write about anything political unless it's related to software or web development in some way. Finally, I'll try to include some nice pictures and links that will enhance your understanding of what it is I'm talking about.
My goal is to start putting my work out on display even though I feel that it may make me look bad. In reality, I'll always be improving as long I keep challenging myself, so what you see on my blog will be a lagging indicator of my programming abilities. That's what I'm going to keep telling myself.
I'm setting a goal of creating software that I can show at my local DemoCamp. This will be another way to put myself out there. I have no problem with public speaking, in fact, that's a comfortable area for me. What's uncomfortable for me is answering technical questions on the spot and being specific enough to feel the asker is getting a good answer.
This is my reboot post. I feel different. I'm going to take advantage of this newfound momentum and try to get more accomplished than I did last year. This blog post contains a general guideline of what exactly I intend to accomplish.
Wish me luck, invisible readers.