Showing posts with label iOS. Show all posts
Showing posts with label iOS. Show all posts

Monday, February 16, 2015

Corona SDK and Code Signing

It's been forever since I posted anything here. A lot has happened since I last posted. I left my old 9-5 to start an agile training, coaching, and consulting company called Artemis Agile Consulting. A LOT of my effort has been focused on trying to get that moving forward. As a result, I've been working in my "copious free time" on games. I ran into some problems with OttoJotts that I was having a REALLY hard time solving so I decided to take a break, get some fresh perspective, and work on something simple that's based on an idea my daughter had.
Basic app with VERY placeholder graphics
The game I'm working on right now is called Cats and Dogs. You play a secret agent cat or dog trying to prevent a bad guy from taking over the world. It's quite simple, in a Flappy Bird kind of way, but I hope it will be enjoyable. And silly. Silly is the key. I decided to try Corona SDK as my app bed because it allows multi-platform support. I really don't want to learn Java at this point in my career, so this seemed like a good solution.
I've had success with Corona in the past. I wrote a simple app to help developers on my teams at the old 9-5 estimate story points using a Magic 8-Ball. You'd shake your device and it would show you an estimate - anything from 1/2 to infinity using a modified Fibonacci sequence. They had complained about "how hard it is to estimate", so I made it easier for them. And we laughed about it. But the experience was great - everything worked seamlessly for both Android and iOS and I was happy.
I've been working on Cats and Dogs for a few months off-and-on and decided that it might finally be in a place where I could put it on my daughter's phone for her to play with. It's nowhere near "done", but it's enough that she can at least play it. So I began the process to build it for iOS and get it going. And that's when I ran into the dreaded "The application does not have a valid signature" issue in Xcode. This is a common error based on the number of stackoverflow questions about it.
Corona has quite a lot of documentation about how to build your application using their simulator. There are also quite a few gotchas. Corona lists several things that can prevent your app from installing on your device: expired profiles, spaces in your project name, etc.
First, let me say that I was using the Xcode Devices window to install the application. I tried iTunes, which seemed to work, but after it put the app on the device it greyed out the icon saying it was "Installing" - iOS speak for "not gonna work, broh". Second, I was using a version of the SDK from November but downloaded the new version (2511) in the process. DO download the new version - the shell console makes it worth it.
For me, I had made sure that I created new certificates for both development and distribution - it had been a while and was worth refreshing everything. Then I created App IDs for both dev and distro and then provisioning profiles. Everything looked shiny and new. I had some old profiles that had expired, but as I wasn't using them anymore, it didn't seem like a big deal. I thought I was pretty much golden.
When I built the app, I made sure I was using the development profile and provisioning profile. Looked like everything was happy when it built but when I tried to install it I got the "Application does not have a valid signature" problem. If you right-click on the device in Xcode it will show you what profiles are installed - and all four of the new ones were, so I was confused.
After I began exploring the issue, I saw a couple of things that might be causing problems. First, I had expired profiles. So I followed the directions and deleted them from ~/Library/MobileDevice/ProvisioningProfiles (the shell console will show you the expired profile IDs). But if you got into Xcode | Preferences and refresh your profiles from iOS Developer Center, it will simply re-download them, which doesn't do you any good. So what I did - unnecessarily, I believe - was to edit all of my expired profiles and renew them. Rebuild, re-install, failure. So it wasn't that.
Then I found that you can't have spaces in the project name. I was using "Cats and Dogs" as my folder for my project, so I made a new folder called "CatsAndDogs" and tried it. Rebuild, re-install, re-fail. Check that one off the list.
I went through the shell console and noticed that it tells you what it actually puts into the bundle. I've been using an Excel spreadsheet to check some things and saw, in the build, that it was putting my Excel sheet in the app. Say what? So - let's remove that from the source folder and try again. Rebuild, re-install, re-fail. Okay - so, not that.
More searching, more looking at parts of my app and source and folders. Nothing. Then I decided to see if it was my project or if it was iOS Developer stuff and I opened the Hello World sample. Build, install, fail. Aha! So it's not my project, it's my provisioning profiles somewhere...
One of the threads I read say to go through your keychain and remove old profiles. I searched for "iPhone" and found a few items but now something stuck out a little. I had two Developer profiles. So I went to iOS Developer Center and downloaded my brand-spankin'-new developer certificate, removed both certs from keychain, and then reinstalled the new one. Then - rebuild, reinstall, and - success!
So, what worked for me (for development, at least) was to remove my old certificates and install my new ones. If you're still running into problems and don't have a "resources" folder in your project, don't have spaces in your project name, and aren't using expired profiles, maybe delete your certificates and install ones freshly-downloaded from iOS Dev Center. Hopefully it works for you!

Saturday, February 8, 2014

Facepalms

Before the holidays, I was really focusing on OttoJotts by trying to finish up what were a dozen or so tasks that needed to be finished before I could release the game. I had determined, based on the lack of response I was getting from my artist on a separate project, that I should focus on something that I had a lot of control over and had made some good progress on completing. After I broke everything down that remained to be done, I found that I had a month or so of work left on OttoJotts to finish it off. I blazed through several different tasks, had to create some new ones, but overall was making some good progress on it. Then the holidays happened.
Catniss in Nutcracker
The Thanksgiving to Christmas period at my house is one of lightly ordered chaos. Catniss has several performances of The Nutcracker with the Colorado Ballet during that time and the spousal unit sings professionally as a caroler for different functions. Toss in a couple of illnesses and the whole time is just ridiculous. I was certain I wasn't going to get much done over the break so I didn't really even bother. And then for Christmas I received Call of Duty: Ghosts, so I had at least a campaign to complete before I could get back to anything. Then it was January and I joined a CoD clan and then we had a clan war and then... Long story short - nothing really happened on OttoJotts from November through January.
When I tried to get back into it, though, I found it more and more difficult to get back into the groove. I found plenty of opportunities to procrastinate and not work on OttoJotts at all - including finding some data from fiksu.com about iOS 7 adoption (you need to check out that site). Given that adoption rates are around 82% for iOS 7 and I've been having trouble getting OttoJotts to draw properly in iOS 7 (something changed in the basic UIView stack I still don't understand), it put even more of a downer on wanting to work on it. Plus, I had something else potentially brewing at the 9-5, so my motivation was a little more depleted than I thought it could be (without being completely disinterested).
BUT (and it's a big but), that's when things started heading south. The "something else" dried up and I started feeling like the 9-5 isn't going to be terribly viable for much longer (which suxors hardcore). Suddenly, without really feeling like I was up to it, I decided that I need to get back to doing what I should be doing, even if I didn't feel like it. I started checking out what needed to happen with OttoJotts and just couldn't, for the life of me, actually open up the project. I'm just a little burned out on it. It was supposed to be a pretty quick little app that would go into the App Store and then maybe make a buck or two. Instead, it's turned into months and months of continuing development that don't quite seem to be going as well as I'd hoped. All of the backend work is challenging for me (I'm a front-end - but not UI - guy). While there are still only about 80-100 hours of work left on it, I think I'm going to put it on back burner while I reinvigorate with something else for a while.
I thought I had been recharging a bit by playing some other games and taking some time off, but I think it's had the opposite effect. It's put new and interesting distractions in my path to getting anything done for real. Unlike some acquaintances, I haven't hit it big on the App Store and can't just semi-retire at the moment. Until then, it's nose to the grindstone no matter how distracted I want to be.
It's not that I don't love doing this - I do - but it's that I just find myself in the same position over and over again: unable to complete some portion of the game because I lack some skill. I need to either acquire said skill or find someone who is willing to help - and unfortunately I haven't found people who are likeminded about doing this. Or I do and they totally flake. *sigh* As a result, I have a hard time being motivated to work on things.
My favorite captain
All of this said, I have about 4 games that are in various stages of completion. If I can just get ONE of them done and out, I think I can make enough to either hire the people to finish the others or perhaps attract enough interest to get people engaged. And then I'd have a small group of games earning a little money in the store for me and that might be enough to get the ball rolling. Which would be totally cool.
So, I am once again ditching my current project (OttoJotts) for something else - for now. Hence the facepalm (to left). It's been a rough few months and I am not at all motivated to do this, but I am motivated to not be dependent upon a salary. I'm not thinking of quitting any time soon, but going to work when you don't have to makes the trip a whole lot easier and more pleasant. And THAT'S the goal - to have the flexibility to do what I want to do when I want to do it. Don't we all?


Saturday, September 14, 2013

Cautions and issues with iOS 7

I've been working on OttoJotts quite a bit over the past few weeks, making some great progress. One thing I've had to do is perform all of my testing in iOS 6 and earlier because I'd been seeing weird display problems with iOS 7. I thought it might have been just some issues with the betas of iOS but now that I have the gold master of iOS 7, I'm seeing the same problems. And now you can too:
iOS 6 on left, iOS 7 on right
What you're seeing is what the screen looks like in iOS 6 and 7, side-by-side comparison. Each letter is a label and I load a box and place it behind each label. On everything but iOS 7 it displays properly as you can see. I thought it might have been a problem with the background color on the label being something other than clearColor, but that doesn't seem to be the case either. I don't know why the boxes aren't displaying at all right now. Definitely going to require some additional work before I put this out to the App Store.
I am pretty surprised by this pretty major change in iOS. This seems like pretty basic functionality that has been changed. I know that a lot of it is because of the new UI paradigm that Apple is trying to introduce, but this seems like quite a major change in implementation from previous versions. What this seems to me is that every app developer is now going to have to be extremely careful about this upgrade and what it means to their apps.
Good luck with your apps.

Sunday, July 28, 2013

OttoJotts REBORN!

Once, a long time ago in a land far, far away, there lived a wanna-be game developer who decided oh-so-frivolously that he would write a game based on a game from his youth. One that he had played with his very erudite mother and worked wonders to both improve his vocabulary and his spelling. He thought that he could write the basic game in a few weeks and then the multiplayer version in a few months and be done by the end of summer. But alas - our wanna-be game developer had a case of the hubris.
He was able to complete the core game mechanics in a week or so and then spent far, far too many days working on getting the user interface to work. For, you see, our developer wasn't "graphically inclined" (read: his artwork suxors). So he spent many a day trying to get some basic things looking good enough to play. And then - amazingly - the single player version was complete! And there was much rejoicing!
As he began to work on the two player version, however, he stumbled and stuttered and fell flat on his face, for his game required a "back-end" (read: database and middleware to talk between the device and the database). And he despaired because again, alack, his database skills were "lackluster" at best and his middleware skills were, perhaps, rated "mediocre". He worked diligently, though, trying to connect all of the pieces. And finally, he got some of the information he wanted to get from the device to the database and back again! And there was more rejoicing!
But then came the actual "two player" work. And there was much gnashing of teeth and grunting of exertion and swearing of curses. And the developer grew weary and tired and despaired of ever completing his opus. He feared that perhaps he would always just be a "wanna-be" game developer.
And then the Great Fruit From Which A Bite Has Been Taken decided that the manner in which he getting information from and to the database was WrongTM. And it was deprecated (read: removed). And the developer was despondent. Not only would he have to actually finish the work to allow two player games to work but he would also have to change all of the code that worked to do that work. And he despaired. And exerted. And cursed. And gave up.
One day, he found that his current hosting provider was deprecating the product he had grown to love these past 10 years and would require that he move to one that was far more limited or one that was WAY more complicated. He decided to move his website and his databases and his code to a new provider who offered a product more in line with his old product. And it was good.
Then, while distracted with another as-yet-fruitless pursuit, he decided to open up the old code and see whether it was possible to make the needed changes for the new database host and make sure he followed the rules of the Great Fruit From Which A Bite Has Been Taken. After looking at the code and the middleware he decided that it wouldn't be that bad after all. And he poked and prodded the middleware, making a tweak here and a revision there until - it worked! And there was astonishment!
And our poor, despondent wanna-be game developer is no longer so despondent (although he is much poorer). He had Purpose. He had Intent. He had - a real opportunity to actually get back to finishing the damn thing.
So now, to you, my gentle reader who has so patiently put up with this long and purposeless fable, I make claim to the Twitterverse, the Facebookverse, and general Internetverse that OttoJotts is REBORN! And it WILL. BE. DONE! (By Halloween.) (No seriously, I mean this.) (Stop laughing.) (Dicks.)

Sunday, December 30, 2012

Care when posting from the web

I've been working on a new application (Electronic Detective for my daughter) which will be the basis for a longer-term game effort and ran into a strange thing. I decided that how I was going to be doing the UI for a particular portion of the game was just incredibly clunky. I had remembered a piece of information that needed to be included and rather than shoehorn it in, I decided to take a step back and see what made the most sense. In this case it was changing things from a static UIView to a UITableView. This opened up a lot of potential real estate and made it possible to do some things I was struggling to fit on the screen before.
I was searching to find the best way to get UITableViewCells working with the new Xcode (4.5) since they've sort of changed how they operate since last I'd done one (a long time ago - in a galaxy far, far away). I found a good sample from a blog post and decided to just copy/paste and modify the sample code. And things were fine - until I got a very strange build error - "unexpected '@' in program". Um, whiskey tango foxtrot was that? I searched a bit more and the answers proposed didn't seem to really address my particular error. Here was the offending code (from a code blog I found):

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
 static NSString *CustomTableCellIdentifier = @”CustomTableCellIdentifier”;

 UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CustomTableCellIdentifier];

 if(!cell)
 {
   NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@”CustomCell” owner:self options:nil];

 if(nib.count > 0)
 {
   cell = self.customCell;
 }
 else
 {
   NSLog(@”failed to load CustomCell nib file!”);
 }
 }
 
There didn't really seem to be anything wrong. The highlighted lines were the ones causing the problem and I couldn't really see a problem. Each of the literals was perfectly correct. What the hell was going on with this code? Then I stumbled upon a stackoverflow question and answer that provided a little insight. What was weird about the editor was that it wasn't showing the text formatted as "text" - it was just showing as black text, not the typical red you'd see. Then I read the part about the "smart quotes". I replaced the first "quote" with a regular "quote" and the text higlighted. That's when I realized I must have pasted in smart quotes and that's what was causing the problem.
I replaced all six quotes and things started working the way I expected. So, as a word of caution, Xcode apparently will maintain some special characters when you paste code from other sources. Make sure that if you're pasting that you double-check the characters. If things don't look correct to you, they probably aren't. It may be a bit weird, but it may be worth your effort to retype some of it manually in the editor to see if it's a problem with the paste or with the code. You could save yourself a little mental anguish by trying a couple of simple things. Good luck and happy coding.


Friday, September 21, 2012

New glyphs are done!

So I spent a little time finishing off the glyphs for the app. I think they look "okay". At least "okay" enough to be in version 1.0. And, for me, they're "freakin' amazing". *sigh* As I said, my graphic artist skills leave MUCH to be desired. Anyway, without further ado, here are the glyphs I made for the app.
The glyphs for my app

Not bad, eh? Yeah, I think they'll suffice. I did spend quite a bit of time making them and hope that they'll be met with approval by the community. It was definitely not something I felt at all comfortable doing, but sometimes it helps to get out of your comfort zone.
I'll point out that these are the original drawings - I haven't cleaned them up at all. I will be extracting the individual glyphs and improving them before incorporating them into the application. From personal experience with other graphics exercises, this will take several hours. I just hope I'll be able to get enough time strung together to make it happen. I also need to get the description written for the application, so that's something else I need to get a block of time to accomplish.
So, there we are. Hope you like the preview here. Once I'm done and submit everything to the App Store, I'll post a link.

SLIGHT delay on Maya Calendar App

So as I was going through the submission process to get my Maya Calendar application onto the App Store (yes, that was actually happening!), I needed to create a description of my application. I decided to go see some of the other applications in the space to see what they had crafted for their descriptions - check for inspiration, really, not plagiarism. No, seriously - no plagiarism. I think I might just like typing that word...
Mine on left, theirs on the right
Anyway, as I was going through looking at "maya calendar" (as opposed to "mayan calendar") I stumbled upon an application - using the exact same graphics. In fact, their icon was the same idea (with a different glyph - see right for comparison). Well, *(^*&!@. And AS I WAS SUBMITTING MY APP! I found that the website I'd "borrowed" the glyphs from was the same site that had the application I found. *facepalm* O.M.G. Bad me for thinking they wouldn't be used somewhere else.
So what did this mean to my calendar app? It meant that I needed to have some new glyphs. I asked my daughter if she'd be inclined to draw them (there were 44 required) and she agreed. Then she drew the first one and decided "um, no thanks - that was HARD". So it fell to me to draw some new ones. I used some different sources to get ideas for what they looked like (including the ones that I can't use now), but I've redrawn all but five of them. Next will be scanning them in, then cleaning them up, then integrating them into the app. The nice thing is that integrating them is a piece of cake - I just need to replace the existing files with the new ones. Also, I'll have higher-quality ones to use for an iPad app (if I do that). While they will be similarities to other glyphs on the web, they're hand-drawn (by yours truly) and lacking the funding to fly to Central America to tromp around Maya ruins looking for samples, I have to do it virtually. Which means other peoples' pictures.
So I'm close to having that app in the store. I'm really hoping that I'll be able to get it done by the end of the weekend. We have a very busy time planned, but here's hoping that I'll have a little time during those two days to get this sorted out and submitted. In the meantime, I'm working on getting a description put together so I can just copy/paste it into the submission page and go from there.
Fingers crossed for a successful submission. Then it's the waiting game for approvals. I'll post more on that as we go through that process.

Wednesday, August 29, 2012

Nearing completion

Current launch screen for the app
So I've been working a few hours every night trying to get closure on the Maya Calendar application - and I'm almost there. Except for a marathon Bejeweled Diamond Mine session this evening (I didn't want to quit until I'd topped 200k) I've pretty much been working on finishing up the application. I've got the backgrounds all changed - they look very nice now - and am working on the final touches. I was going to do a universal application - both iPhone and iPad - but the size on the app was making it ridiculously large. Like 60 MB large. Wow. Um - no.
What's left you ask? Well, I've got some "about" kinds of things to finalize. Need to get the application version information in there as well as information about HOW to use the app. Plus I wanted to put in some text about the long count calendar - where did it come from, how was it used, etc. Once I get those things in and working as expected I think I'll be ready to build it for distribution. I don't have an iPad version yet at all. I think while I'm waiting for the App Store approval process to complete I'll work on the iPad version. I've got all of the graphics and logic - just need to change up the display. I think.
Things have been coming together over the past few days. I feel that I've been productive - moreso than in weeks past. In order to get things finished I need to do something I haven't ever done before, so I do still have a little more work to do, but I feel now that I'm closer than ever to having something completed that can be submitted to Apple. And that will be a huge boon to my self-esteem these days. I also made some adjustments to the graphics that, for a non-graphic artist, I feel pretty good about.
Anyway - just a quick update. Looks like things are getting close. Now to sprint to the finish line and be done with this.

Wednesday, June 6, 2012

More Long Count Calendar Updates

I've been making some awesome progress on the long count calendar application. I've got all of the math working (although I still need to test all of the nasty edge cases to make sure it calculates things correctly), but for anything after 1582 (when the Gregorian calendar came about) it seems to be working just fine. To test the date calculations I'm working on the ability to convert ANY date into a long count. This is a nice feature to have (what was Jan 1, 1900, for instance?) and will be useful for people looking to compare against other date calculations. The other thing I'm going to provide is the ability to put in a long count date (13.17.5.2.1) and see what date that converts to in a Gregorian calendar.
Normally, the main issue about converting from these earlier dates to later ones is that not everyone transitioned to the Gregorian calendar at the same time.Most of Catholic Europe adopted it in/around 1582. The British empire didn't adopt it until 1752 and the Soviet Union was in 1918 (right after the Bolsheviks took power and Russia became the Soviet Union). The Wikipedia article on the calendar has a nice chart showing the adoption times for different countries. So depending on where you were you had a different calendar. I'm pretty sure that the date is the 1582 and using the default NSCalendar objects will fix it for that date, I believe.
I will say that Apple seems to have done a good job with the calendar objects. NSCalendar and NSCalendarComponents are very nice little objects that really do simplify the mathematics. I have to convert to Julian dating anyway, which makes the math about as easy as it can be, but having the system provide some of the common functionality is very handy, especially being able to extract out year, month, and day without any extra divs and mods on my part. It will even provide the day of the week if you need it (which I don't in this particular application). I still need to dig into the objects a little more, especially with the pre-1582 dating - just to make sure they work as expected.
I did get the T'zolkin and Haab calculations into the application, so not only does it show the long count form (12.19.19.8.2 for today) but also the "month" and "day" (5 Sotz' 1 Ok - also for today). So everything is present in the application now from an implementation perspective - all the math works, it grabs the right images, etc. I need to get some better quality glyphs for the application, though, because the ones I have are low-res and won't look good on the iPhone let alone an iPad. That could actually be a major pain in the butt - one I'm not concerned about right now (those two stories are last on my kanban board), but I recognize that I'm going to have to spend some time either finding some good quality ones or drawing them myself (shudder!).
Overall things are looking really good. I think I might be able to make some good progress this weekend during downtime for Yeomen of the Guard. I'm off-stage quite a bit and with 3 shows in 4 days, I've got a lot of potential time to move this forward. I'm setting a goal of having the Gregorian to Long Count conversion done around Saturday night, the Long Count to Gregorian conversion around Sunday afternoon, and the reckonings done by Monday night. Which means that all I'll have left to do is get some good graphics next week and then I could, in theory, put it out on the App Store by the end of June - the first such Otto Von product to be available. All in the course of 3 weeks. Wow.
So keep your fingers crossed - I need all the luck I can get on this rapid development path!

Monday, June 4, 2012

Silly Little Mayan Long Count Calendar Utility

So for post 101 (that's 5 in binary), I'm giving a sneak peek into a silly utility I decided to develop. I don't know why, but it's just been one of those things that I thought "you know - why not?". So I am. And what IS said utility? Oh, it's tres bien, mon amie. And tres sillie. (And yes, I know that sillie is not really French). Regardless, here's a screenshot:
And what, pray tell, is that? Why, my friends, that's a Long Count (commonly referred to as "Mayan") calendar converter. It tells you what day it is in the Long Count (which, ya know, 'ends' on Dec 21 of this year - but not really). The Long Count calendar is actually pretty straightforward. It's mostly based on the number of days since the "dawn of man" which is 13.0.0.0.0 - a date that correlates commonly to August 11, 3114 B.C.E. It uses a Julian dating scheme (every day is just 1 more day) and then divs and mods them into buckets (b'ak'tun, k'atun, tun, winal, and k'in). The main Wiki page gives a pretty good explanation of the whole thing.
I pretty much started it this evening when I got home, but I've been reading about the Long Count for a while now. I'm intrigued by different counting methods. I used to have a devil of a time with them (converting from decimal to binary to hexadecimal sucked). And then I heard Tom Lehrer's "New Math" (YouTube link here - and yes, you want to click it) and it completely resonated. I grokked it. My mom had Lehrer's LPs (if you remember those, you're older than you look) and I listened to them endlessly. Since then I've kind of geeked out at new methodologies.
Anyway, I looked in the App Store and saw a couple of things about the Long Count calendar but saw that some people were disappointed in the lack of functionality of some of those other apps. There are multiple "reckonings" for the start point of the Long Count, but those are all just relative to the main reckoning. It seems simplistic to use the different reckonings for reference use and also to allow people to convert any date. Probably be able to put in a Long Count and have it convert to a Gregorian date as well. So I'll see what I can do to make that happen and quickly.
Given that I have the basic calendar already working in just a few hours I'm actually feeling a lot more accomplished than I have in ages. And that's a good thing. And tres bien, mon amie.

Wednesday, April 25, 2012

OttoJotts and other stuff

Been working on the back-end pieces of OttoJotts over the past few weeks. It's been slower than I'd hoped, both because I'd run into a small issue that was keeping me from moving forward with the game views and because I was finding other things I wanted to do instead (like catch up on Reddit and watch some videos). I've been a bit demotivated the past few weeks. Lots of stuff happening personally and financially that have added more stress than I needed right now.
On the OttoJotts front, though, things have been progressing reasonably well given the time I've spent on them. Right now I've got the account information and the main game list showing up. I still have to get the game details (the guesses and such) showing up and the ability to start games. Still a lot of work left but once I get these things sorted out it's a lot of playtesting and hooking it up to the iPhone.
iPad is still something of a question. I don't own one so I'll need to rely on people who do to test it out. I'd like to make sure that it works and that I have a good set of graphics for it so it looks reasonable. Just hoping that at least one of my friends is willing to help out. *wink wink*
The other issue I've been running across has been my ADHD kicking in wanting me to work on another small project and get it out. That's kind of what OttoJotts was supposed to be, so I hesitate to jump through the hoops to get something started only to end up on month 15 with nothing yet to show for it. I need to take a Kanban approach and just finish the work in progress and then work on the next thing. It's something I've struggled with for years and is once again rearing its ugly head. I wish I were more motivated to finish OttoJotts and get it done. Maybe I'm unable to complete things. Maybe I'm afraid of what happens if I do complete it (total flop). I don't know - it's just frustrating and adds to my stress level.
Anyway, lots to do at the "real job" (for now). I have tons to do still but I can actually pull this out if I can just get some focus on it. Send happy, supportive thoughts!

Monday, March 12, 2012

More updates

I don't want to sound like a broken record, so thankfully this post avoids that. I've been working on cleaning up the back-end PHP code for OttoJotts so I can create a basic web interface that will exercise the two-player game. One of the concerns at this stage is that I'm going to spend too much time on the iOS front end and less on the actual game play. By working on the back-end I'm focusing my attention on the actual play. This also has the benefit of being the basis for a web interface for other things.
I've almost completed moving all of the actual working code into functions that can be called from either the iOS-supporting PHP code or from an HTML page directly. Given my (relatively) intermediate skills in web development, I'm hoping I can get something written up without killing myself to provide access. Some things, like creating an account and such, I'll pass on as that will require some effort. Rather, I'll just do that manually for now and then later work on getting something coded up that's pretty and usable.
Overall I'm pretty happy with how things have been going. I know that there's an added security benefit to what I'm doing, which is definitely a good thing. PHP has had a reputation for being somewhat "security lax" but there are things that you can do to harden it. Part of this work is doing that hardening.
So, things are progressing even if not visibly. I'm hopeful that I'll be able to get this hammered out in the next few days and then I can work on the web interface. Then I'll be able to test the two player game code and, if everything's working well, be good to go. This does make me wonder, though, whether I should just do a web interface iOS app for the two player game and get the single player game out there. So do an OttoJotts solitaire version now-ish, get the web version working and then write a web UI wrapper app for the two-player game since I'm finding the two versions are radically different. Need to think this one over a little bit...
Until next time...