tag:blogger.com,1999:blog-72600187303452370042024-02-18T19:38:13.257-08:00Fat Tom's Tech Journal¯\_(ツ)_/¯ I love lamp.Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.comBlogger49125tag:blogger.com,1999:blog-7260018730345237004.post-49543094648043347792013-03-08T12:24:00.001-08:002013-03-08T12:24:51.163-08:00I've moved from Blogger!I'll continue to blog, but I'm hosting my own site now. Please check me out over at <a href="http://blog.thomasphillips.info/">blog.thomasphillips.info</a>!Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-38766284518617736222013-02-04T09:13:00.001-08:002013-02-04T09:20:53.549-08:00The Engineering ProfessionCame across this quote I really liked on Jack Ganssle's newsletter <a href="http://www.ganssle.com/tem-subunsub.html" target="_blank">The Embedded Muse</a>. <br />
<br />
<blockquote>
Engineering ... it is a great profession. There is the fascination of watching a figment of the imagination emerge through the aid of science to a plan on paper. Then it moves to realization in stone or metal or energy. Then it brings jobs and homes to men. Then it elevates the standards of living and adds to the comforts of life. That is the engineer's high privilege. <i>(Herbert Hoover, 31st president of the United States)</i></blockquote>
<br />
<br />
<br />
- Posted using BlogPress from my iPadThomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-6576614267061243162013-01-15T07:21:00.001-08:002013-01-15T07:21:16.485-08:00iOS (POSIX) SecurityI've long been interested in <a href="http://tomstechjournal.blogspot.com/2010/04/what-is-jailbreak.html" target="_blank">learning more about jailbreaking</a>/ device security. The problem is, I did not know where to start. The topic requires so much knowledge about other fields, that it's kinda impossible to just jump right into finding exploits. In my quest for info, I learned lots about Unix, POSIX, and Apple's implementation into their iOS (and Mac) devices.<br />
<br />
Recently, I found the <a href="http://www.amazon.com/iOS-Hackers-Handbook-Charlie-Miller/dp/1118204123" target="_blank">iOS Hacker's Handbook</a>. This is the book I've needed all this time. It's perfect for the stage I am in my learning. It goes through building custom ramdisk images for iOS 5, using scripts and tools (<a href="http://theiphonewiki.com/wiki/Redsn0w" target="_blank">redsn0w</a>) that have already been developed and tested. By not reinventing the wheel, so to speak, I can incrementally increase my understanding of the subject without being inundated with technical jargon beyond my comprehension lol.<br />
<br />
There are some scripts that don't work as presented in the book, so I opened them in TextEdit and examined them, making changes when necessary to fit my particular situation. This has made me much more comfortable with Unix shell scripting, as well as served as served as a great introduction to python for me. Hope <a href="http://blog.iphone-dev.org/" target="_blank">DevTeam </a>has room for me!<br />
<br />
Now to think of a clever hacker pseudonym...th0mas probably isn't gonna cut it, huh?Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-42386779473338408032012-10-15T11:06:00.003-07:002012-10-15T12:59:34.882-07:00Wait...I'm smart???<br />
At work the other day, I came to an astonishing epiphany - I am smart. Like smarter than I thought I would ever be. Don't get me wrong, I'm not conceited. I just thought of all the obstacles I've overcome on the route I took to get to where I am, and I became almost overwhelmed with a sense of pride in my accomplishments to date, as well as excited about the things I have yet to achieve.<br />
<br />
Y'all still don't feel me tho..<a href="http://tomstechjournal.blogspot.com/2012/10/above-all-else-persevere.html" target="_blank">here's a little background</a>.<br />
<br />
<a name='more'></a><br />
<br />
Throughout my educational and professional career, I have been around smart people who have done and understood things that absolutely blew my mind. I can vividly remember thinking I'd never reach that level of understanding in any subject. Not that I didn't WANT to, it's just that I was so far from it, I couldn't fathom it.<br />
<br />
I have a trait which has been quietly working in my favor all along - my desire to seek knowledge. Whenever I learn about something new, I like to understand as much about it as possible. By gaining a fundamental understanding of how something functions, I'm able to apply that knowledge to a broad range of similar technologies.<br />
<br />
Over the past few years, I've gotten deep, technical understandings of operating systems (<a href="http://tomstechjournal.blogspot.com/2012/09/linux-from-scratch-build-environment.html" target="_blank">desktop </a>and <a href="http://stackoverflow.com/questions/2668867/what-does-jailbreak-do-to-the-iphone-technically" target="_blank">mobile</a>), cellular communications, and automotive bus networking (<a href="http://en.wikipedia.org/wiki/CAN_bus" target="_blank">CAN</a>). These are my main three areas of interest, so whenever I get a chance, I dig into them, gaining a little more knowledge with every new endeavor.<br />
<br />
I enjoy doing things like hacking my iPhone - not to be malicious, just because I'm curious about how it works. I'm intrigued by how all the complex systems in mobile and automotive environments mesh together in (general) harmony. I like to take on hardware projects as well. I order components from Sparkfun and build small embedded projects. My goal is to merge all of these interests into one idea and probably take over the world...ruthlessly and by force if necessary (just kidding...kinda).<br />
<br />
Until then, good luck.<br />
<br />Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-89053176295090836562012-10-10T09:29:00.000-07:002013-01-15T14:00:33.623-08:00Above all else - Persevere Sorry if I've told this story before..I just felt compelled.<br />
<br />
I was never a stellar student. I wasn't horrible, but I did what I had to do to make it through. I got my first C in the 4th grade. I think it was in handwriting...mighta been math, but that's not important - I had never gotten anything lower than an A to that point. I did well enough through junior high to place into <a href="http://en.wikipedia.org/wiki/Renaissance_High_School" target="_blank">Renaissance High School</a> - [arguably] the best public school in Detroit.<br />
<br />
<a name='more'></a><br />
<br />
I meandered through high school with no real purpose or goal. I went to school because that's what was expected of me. I had a counselor, but no real guidance. I was active in a few different activities - Medical Careers Club, bands (marching, jazz, symphony). I even ran track...then after a week, I decided that running until I'm out of breath without being chased by something was just stupid. I ran my one and only meet in <a href="https://www.google.com/search?hl=en&safe=off&rlz=1C1GGGE_enUS457US457&q=nike+air+force+1+mid&bav=on.2,or.r_gc.r_pw.r_cp.r_qf.&bpcl=35277026&ion=1&biw=943&bih=967&um=1&ie=UTF-8&tbm=isch&source=og&sa=N&tab=wi&authuser=0&ei=FiN8UJ6RAsy6yAHd_ICgBA" target="_blank">mid-top Air Force 1s</a> because I forgot my track shoes at home smh...I was decent in everything, but excelled in nothing.<br />
<br />
When senior year came around, I realized that college was coming, so I had to do something to differentiate myself from the pack of applicants to whatever university I would apply to. I had no idea where I wanted to go; I had never given it any real thought. In the middle of my senior year, we had on-site admissions, where universities would come to the school, evaluate students on the spot, and offer admission and financial aid then and there. Being that I had a slight interest in computers (I built one my senior year), people told me "hey man, you should go to school for computer engineering!" With no idea what the hell a computer engineer was, I went to on-site admissions for <a href="http://www.soundsnap.com/node/82055" target="_blank">The University of Michigan's College of Engineering</a>.<br />
<br />
I was admitted through their Summer Bridge program, which was aimed to give students a head start at life on campus. I took a few college courses, and continued with the same mindset I had in high school -<br />
<br />
<blockquote class="tr_bq">
<i>"Everything will be ok. Just care a little bit, and the universe will provide."</i></blockquote>
<br />
Maaaan look...Thomas's Rules of the Universe don't apply to Michigan Engineering. I learned the hard way, you have to be firm in your resolve to succeed in highly-competitive environments. Unfortunately, I was not. I was given the option to leave the College of Engineering but remain at the U of M, free to pursue another degree, or take a semester off, come up with a plan for success, and return to engineering school. I left, stayed home a semester, and took classes at a community college. <br />
<br />
Upon my [socially triumphant] return to the U of M, I decided to take classes in Computer Science instead of Engineering. I did really well this semester, achieving a 3.4 GPA. I had rebuilt my confidence, and decided I still wanted my Engineering degree. The following semester, I took engineering classes again, and got smacked in the face. This time, the U was not so friendly. Dismissal was the case that they gave me (<a href="http://www.youtube.com/watch?v=Do4fA8tONY4" target="_blank">obscure Snoop Dogg reference</a>...sorry).<br />
<br />
Now what I'm gon do?<br />
<br />
I'm 19, maybe 20 years old, wasted two years of time and money, and still don't know wtf a computer engineer is. But I still know I'm gonna be one. I still owe U of M money, so I can't transfer any credits to another university, so I go back to community college and take all my prerequisites. This takes a solid 2 years. At the end of this, I transfer my credits to Wayne State University's College of Engineering.<br />
<br />
This was it! I was enrolled in engineering courses, learning, and performing well. I seemed to finally have found my stride! Then, after 2 semesters there, they informed me that I'd be getting the boot because of the money I owed U of M. I fought it for a while, but there seemed to be no way around it.<br />
<br />
NOW what I'm gon do?<br />
<br />
I considered my options. I thought about going out of state. I thought about getting a job in a plant, taking time away from school, and saving money to pay my back tuition. It was at this time, 5 years after graduating from high school, where I began researching schools. I looked into different universities and did the legwork I should have done years before, to see which places most closely fit my interests. I made a list, called, visited, and asked opinions. At the end of this trial, I found Lawrence Technological University in Southfield best suited my needs.<br />
<br />
My first semester there, I got a full-time engineering internship. I took classes full-time as well. The next year, I realized I'd have to cut back on the school hours. Working was no longer an option; I had bills to pay. I continued working and going to school for the next 5 years. Struggling at times through being laid off numerous times, taking the bus all over The Creation, and all types of other obstacles thrown in my path. But I eventually made it.<br />
<br />
When all the dust settled, I spent ten years getting my bachelor's degree. By this time, I had friends who graduated high school the same year as me who are practicing doctors and lawyers. I think it's a good thing that I never compared my journey to that of my peers. I ran my own race. At some point, I subconsciously became incredibly focused, locked in on my goal, and relentlessly pursued.<br />
<br />
Looking back on my experiences, I can honestly evaluate myself. I made mistakes. I sometimes made the same mistakes more than once. I learned almost all of my lessons the hard way, but I did learn them. Every setback along the way has made me who I am today. I am at a point now, where I can be proud of the man I've become, and look forward to who I'm becoming. Although at this point I only have one "4-year" degree, I have gained much more in life experience. I am now equipped with the confidence and insight to take on any challenge and emerge victorious.<br />
<br />
My advice to anyone facing setbacks is this: never stop. If there is a goal in your heart worth chasing, chase it. Pursue it with fervor, and do not give up until you have it. When I started my journey, I was ill-equipped to fend for myself. Along the way, I picked up all the skills and tools I needed to survive. Find your ambition and use it to drive you. Rock bottom is wherever you decide that the only direction from here is up. Even from an abyss, know the stars are above you and shoot for them. <i>Ad astra per aspera</i>.<br />
<br />
P.S - Somebody tell Sister Virginess, my handwriting is dope as hell now.Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com1tag:blogger.com,1999:blog-7260018730345237004.post-18770412710692808982012-10-01T09:27:00.000-07:002012-10-03T06:21:28.533-07:00Favorite under-the-radar iOS 6 and iPhone 5 featuresI just wanted to post a few thoughts of my first week with iPhone 5 (2 weeks with iOS 6). Overall, I like them both. The features they advertise are always nice, but I always appreciate the silent updates - the things that generally go unnoticed, but add to (or detract from) the user experience.<br />
<br />
<br />
<a name='more'></a><br />
<b><u>Spellcheck Improvements</u></b><br />
I have noticed spellcheck improvements in every major release of iOS. This time, Apple addressed a nagging issue that always bugged me - punctuation handling. Spellcheck in iOS 6 recognizes quotation marks and apostrophes much better than previous versions. For example, in the message:<br />
<blockquote class="tr_bq">
<span style="font-family: Arial, Helvetica, sans-serif;">She said "shut up." So I stopped talking.</span></blockquote>
iOS 6 recognizes the period inside the quotation marks ended the sentence, and auto-capitalizes the next word. Another example is the recognition of possessive proper nouns. When typing the name "Jay" iPhone always wants to correct it to "Kay." However, when I was addressing something that belonged to Jay (i.e Jay's), the apostrophe would cancel spellcheck. Now, it will display "Kay's" as a suggestion...which is mildly annoying, considering I don't know anyone with that name, but I'm still impressed with the functionality. It also catches multiple-word proper nouns like "App Store" and "iTunes Match" and applies the proper capitalization.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDck7o_K0tInBtAA-TTXmd1qA-n-xj4vee8pez8TSdbC14OJkaR39xbN0ZcsTLAY-ak6H3ul9-MjpEfN-Pf995dcxPGG1j5PdLNWczHeTZiAHCNHivjZXrLqiOxC-tor6JOR46Jnvd0y8/s1600/photo.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDck7o_K0tInBtAA-TTXmd1qA-n-xj4vee8pez8TSdbC14OJkaR39xbN0ZcsTLAY-ak6H3ul9-MjpEfN-Pf995dcxPGG1j5PdLNWczHeTZiAHCNHivjZXrLqiOxC-tor6JOR46Jnvd0y8/s400/photo.PNG" width="225" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<b><u>Streaming iTunes Match</u></b></div>
<div class="separator" style="clear: both; text-align: left;">
I was an early adopter to iTunes Match. In iOS 5, it was nice, but definitely not ideal. Actually, to be frank, it was hell on my data plan. I'm part of the AT&T Resistance, holding on for dear life to my <a href="http://www.macrumors.com/2012/09/12/atts-grandfathered-unlimited-data-plan-customers-get-5gb-on-lte-before-being-throttled/" target="_blank">grandfathered unlimited data plan</a>. At some point, they decided to throttle users who consumed more than 3GB of data. Pretty much saying, "yeah, use all you want...if you can stand these slow ass speeds ::snicker snicker sneer sneer::" Every month since I subscribed to iTunes Match, I was reaching this 3GB data cap within like the first week of my billing cycle.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Previously, I would have to download music from the cloud to my device - it wasn't true streaming like Pandora. So I'd download music I wanted to listen to, play it for a while, then when my device filled up, I'd delete stuff and download again. The new way iTunes Match works is very similar to Pandora - but with my own music library. I haven't seen any official bandwidth usage numbers, but I know it's small. When I updated to iOS 6, I was already being throttled for the month, but was able to stream my music without a problem, even at prehistoric speeds. </div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<b><u>New Emoji</u></b></div>
<div class="separator" style="clear: both; text-align: left;">
Lots of new colorful icons that I can string together to tell stories which would be much quicker to just type out. Or just annoy my Android friends with <span style="background-color: white; font-size: 12px; white-space: pre-wrap;">😄</span><span style="background-color: white; font-size: 12px; white-space: pre-wrap;">😄</span><span style="background-color: white; font-size: 12px; white-space: pre-wrap;">😄</span>. That's always fun. Now I can do stuff like this:</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHgATc53UjdO6SyTFLvNo4EGkh4qvOwquvi4BEinxeP4ZVUhZ6Jz3byUfeUTem5E9ehpkaPbldQPkqQockfTTPiL8biw7sU8z0TlLc7gtlZv8K6gUvE61-Viy6aWeMM0-K7fTgNl7_Dhs/s1600/photo.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHgATc53UjdO6SyTFLvNo4EGkh4qvOwquvi4BEinxeP4ZVUhZ6Jz3byUfeUTem5E9ehpkaPbldQPkqQockfTTPiL8biw7sU8z0TlLc7gtlZv8K6gUvE61-Viy6aWeMM0-K7fTgNl7_Dhs/s400/photo.PNG" width="225" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Don't judge me</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<b><u>Maps</u></b></div>
<div class="separator" style="clear: both; text-align: left;">
Ok, this isn't completely under the radar. I like it. <a href="http://theamazingios6maps.tumblr.com/" target="_blank">But I think I'm the only one</a>. Even Apple <a href="http://www.apple.com/letter-from-tim-cook-on-maps/" target="_blank">admitted</a> it's bad lol. Granted, I don't use it much, but for my purposes, it works fine. I loved the fact that it showed the map, live, on my lockscreen.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiffZQYRD6SqKiX2qqnAjWz-qwD420eBAFDJ-dL8c2oyQBvMikJBV-fpaNNaIikCWpOGiWe-kUlC28I3zktPf2m-833VmwoHn7lmAPGfmE3nzuj3G8omvHMp_9b9eKlqQJeXgx9FNuPB_g/s1600/photo+1.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiffZQYRD6SqKiX2qqnAjWz-qwD420eBAFDJ-dL8c2oyQBvMikJBV-fpaNNaIikCWpOGiWe-kUlC28I3zktPf2m-833VmwoHn7lmAPGfmE3nzuj3G8omvHMp_9b9eKlqQJeXgx9FNuPB_g/s400/photo+1.PNG" width="225" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">AND I got LTE on 7 Mile. #pow</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: left;">
Apple struggles sometimes with launches, but iteratively makes things better (e.g <a href="http://en.wikipedia.org/wiki/IPhone_(original)" target="_blank">iPhone</a>, Siri, and iTunes Match). Maps will mature. I'm not worried. And if it doesn't, <a href="http://www.reuters.com/article/2012/09/25/us-google-iphone-idUSBRE88O07U20120925" target="_blank">hopefully Google will save us</a> lol. That's the beauty of this platform - third-party developers can step in and fill the void. They are very resourceful, and looking to capitalize on this shortcoming. Either Apple will step up, or some other developer will create an app to satisfy the need.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<b><u>One-Tap Updating</u></b></div>
<div class="separator" style="clear: both; text-align: left;">
In the App Store, what's the point of having to enter my password just for updating an app? I guess Apple thought the same thing, so now you don't have to enter your AppleID password to update your already-purchased apps. I would like if they would do this for ALL free apps, but they probably won't.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<span style="font-size: large;"><b>
I Don't Like</b></span><br />
<div>
<b><u>FaceTime over Cellular Racket</u></b></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilC8IYivfR3ww-vMnn63c5BbwErWTYzFNVgHULQIxdtfsFniTjQ3QJgBVi3F3Wf_mOr5Nna-5ZiEi60zoAFdPgMG_pzOlDucelA0V358AX2ygWub7ZzUfNjLxFPz2aifvj_ZXRQ_eY5TQ/s1600/photo.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilC8IYivfR3ww-vMnn63c5BbwErWTYzFNVgHULQIxdtfsFniTjQ3QJgBVi3F3Wf_mOr5Nna-5ZiEi60zoAFdPgMG_pzOlDucelA0V358AX2ygWub7ZzUfNjLxFPz2aifvj_ZXRQ_eY5TQ/s400/photo.JPG" width="225" /></a></div>
<div>
<b><u><br /></u></b></div>
<div>
<b><u><br /></u></b></div>
<div>
They advertised that you can now use FaceTime over cellular with iOS 6. I noticed that at the announcement, there were very few details about it. The real is that FaceTime over cellular is "incompatible" with the unlimited data plan. I'm straight. <a href="http://www.3gunrestrictor.com/" target="_blank">I'll just wait a couple months</a>. </div>
<div>
<br /></div>
<div>
<b><u>Charging/ Cables Debacle</u></b> </div>
<div>
Battery life leaves a lot to be desired. Since its inception, iPod has always had the same connector. Being that I've had numerous iDevices, I have lots of the 30-pin connector cables. They're literally everywhere I am - home, car, work. Now, I'm starting over, and have only one Lightning cable, that I have to carry with me everywhere, which increases the likelihood that I'll damage or lose it. They even made it<a href="http://dvice.com/archives/2012/09/apples-iphone-5.php" target="_blank"> difficult for the bootleggers</a>, so I probably won't be able to get the $10 joints from the gas station anymore. <a href="http://www.youtube.com/watch?v=H_OH89mynz0" target="_blank">That's that [stuff] I don't like</a>.</div>
<div>
<br /></div>
<div>
<b><u>Keyboard Flicker</u></b></div>
<div>
Sometimes I notice a flickering in the keyboard. <a href="https://discussions.apple.com/thread/4328294?start=0&tstart=0" target="_blank">I'm not the only one</a>.<br />
<br /></div>
<span style="font-size: large;"><b>
iWant</b></span><br />
<div>
The ability to adjust the old-resolution apps' position on my screen. I've had some mild difficulty going back and forth between typing on full-res apps and the old-style. The old-style apps are centered vertically on the iPhone 5's taller screen. This renders the keyboard slightly higher than in apps designed to utilize the iPhone 5's full display. I think it'd be cool if we were given the option to move this up and down on the screen to suit our preference. </div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrt1R3APBqJQxKtcY_EQk9fUfPEnpH_beB3P4CcsZJGKZPYLbPBdgyXsEnA6CtyAntr3X01OdqjfK5SYd2lSEK43SLCJ_-G9QiD4Ad2PjHGKL5Dzu7sg_s89s2Mk8mqhObVoyKjzyucYc/s1600/photo.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrt1R3APBqJQxKtcY_EQk9fUfPEnpH_beB3P4CcsZJGKZPYLbPBdgyXsEnA6CtyAntr3X01OdqjfK5SYd2lSEK43SLCJ_-G9QiD4Ad2PjHGKL5Dzu7sg_s89s2Mk8mqhObVoyKjzyucYc/s400/photo.PNG" width="225" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
If I could slide the entire app down to the bottom of the screen, that would make typing consistent across all apps using the built-in keyboard.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div>
<br /></div>
Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-65925058051937346392012-09-26T07:44:00.002-07:002012-09-26T07:44:22.576-07:00AppleScript to create Address Book EntriesFor work, I created a test for MAP-enabled devices. Being that iPhone now supports MAP, I figured a good test would be to create a huge contacts list on the iPhone, then pair the device to the unit under test and see how it responds. I (obviously) did not want to have to manually create hundreds or thousands of contacts, so I looked into using <a href="http://support.apple.com/kb/HT2488" target="_blank">Automator </a>or <a href="http://en.wikipedia.org/wiki/AppleScript" target="_blank">AppleScript</a>.<br />
<br />
<a name='more'></a><br />
To save myself some time, and perhaps get a head start, I posted a <a href="http://apple.stackexchange.com/questions/61632/script-to-create-iphone-contacts/61642#61642" target="_blank">question on Ask Different</a>, and got a really helpful response. The code posted there pretty much completely solved my problem, and gave me an excellent introduction to AppleScript.<br />
<br />
For those interested, here's a snippet from <a href="http://en.wikipedia.org/wiki/Bluetooth_profile#Message_Access_Profile_.28MAP.29" target="_blank">Wikipedia about MAP</a>:<br />
<blockquote class="tr_bq">
<span class="mw-headline" id="Message_Access_Profile_.28MAP.29"><b>Message Access Profile (MAP)</b></span>Message Access Profile (MAP)<sup class="reference" id="cite_ref-3" style="line-height: 1em;"><a href="http://en.wikipedia.org/wiki/Bluetooth_profile#cite_note-3" style="background-image: none; background-position: initial initial; background-repeat: initial initial; color: #0b0080; text-decoration: none; white-space: nowrap;">[4]</a></sup> specification allows exchange of messages between devices. Mostly used for automotive handsfree use. The MAP profile can also be used for other uses that require the exchange of messages between two devices. The automotive Hands-Free use case is where an on-board terminal device (typically an electronic device as a Car-Kit installed in the car) can talk via messaging capability to another communication device (typically a mobile phone)...Apple introduced Bluetooth MAP in iOS 6 for the iPhone and iPad.</blockquote>
Unfortunately, I haven't been able to find any official Apple documentation on MAP in iOS 6, but I'm still looking.<br />
Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-48493669785224157712012-09-20T07:40:00.004-07:002012-10-15T09:30:52.928-07:00iOS6 - Limit Ad Tracking<span style="font-family: Arial, Helvetica, sans-serif;">I hate ads. I hate them online. I hate them on my windshield when I get back to my car after parking downtown. And I <b>especially</b> hate them on my mobile devices - an environment I used to feel safe. </span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">After updating to iOS6, I found a new "Advertising" category buried in my Settings > General > About menu. The next screen presents a switch that allows you toggle a feature called Limit Ad Tracking. </span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"></span><br />
<a name='more'></a><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">So does that mean Apple is tracking my usage to target ads directly to me? If so, I know it's PROBABLY harmless, but still...I'm uncomfortable, dog. On the bottom of screen, there's a "Learn more" link, giving the following explanation: </span><br />
<blockquote class="tr_bq">
<span style="color: #574a42; font-family: Arial, Helvetica, sans-serif;"><span style="font-size: 14px; line-height: 22px;">iOS 6 introduces the Advertising Identifier, a non-permanent, non-personal, device identifier, that advertising networks will use to give you more control over advertisers’ ability to use tracking methods. If you choose to limit ad tracking, advertising networks using the Advertising Identifier may no longer gather information to serve you targeted ads. In the future all advertising networks will be required to use the Advertising Identifier. However, until advertising networks transition to using the Advertising Identifier you may still receive targeted ads from other networks.</span></span></blockquote>
<span style="font-family: Arial, Helvetica, sans-serif;">I found an <a href="http://apsalar.com/blog/2012/06/apples-new-advertising-id/" target="_blank">article </a>on the advantages of using this new Advertising Identifier as opposed to the device's UDID. Interesting reading, and I applaud Apple for creating this new construct to allow advertisers to sell stuff, yet still allow users to maintain SOME privacy...but I'm still not feelin it lol. Until I learn what all parameters are included this identifier, I'm content with regular ass, un-tailored ads. So I turned it off. Here's how:</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgS-ydjdsH5Uak90RaGvuO1UuBU5mSWnThbT0FvuACfwxhxqjo091WY2ELlJrs-hdu4irqUU7RYjDvrv36k7yxAU-q6Y65F0EN1_f_m-PEKxgB20aZahZmfm69R6oLVtQwa8yOhjXfnPpM/s1600/photo+1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgS-ydjdsH5Uak90RaGvuO1UuBU5mSWnThbT0FvuACfwxhxqjo091WY2ELlJrs-hdu4irqUU7RYjDvrv36k7yxAU-q6Y65F0EN1_f_m-PEKxgB20aZahZmfm69R6oLVtQwa8yOhjXfnPpM/s640/photo+1.PNG" width="393" /></span></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">One of the reasons I [generally] prefer iOS to Android is because I KNOW that Google is in the business of advertising. I understand and accept it. That's how they make money. I'm fine with it. But I just hope my phones and tablets don't turn into advertising machines; that's what my television is for.</span><br />
<br />Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-32286310233902678912012-09-18T14:00:00.000-07:002012-10-15T09:31:10.861-07:00Keep the pinout handyA small lesson I learned [the hard way] today lol. When creating a cable or connector with multiple connections, it's always a good idea to keep the pinout nearby. Today I was making a couple DB9 to banana jack cables for connecting my CANCaseXL to a test bench. I only use 3 connections used on the DB9, and I broke each one out to a different color banana jack:<br />
<br />
<a name='more'></a><br /><br />
<a href="http://www.ni.com/pdf/products/us/3ic744-747.pdf" target="_blank">Pin 2 - CANL - Green</a><br />
<a href="http://www.ni.com/pdf/products/us/3ic744-747.pdf" target="_blank">Pin 3 - GND - Black</a><br />
<a href="http://www.ni.com/pdf/products/us/3ic744-747.pdf" target="_blank">Pin 7 - CANH - Yellow</a><br />
<br />
Seems so simple, right? Should be, smh. After I soldered, heat-shrunk, and screwed everything together, I plugged everything in aaaaand....error frames galore. I had mixed up a couple of the pins.<br />
<br />
At some point during this [seemingly simple] assembly, I lost focus and soldered the wrong pin to the wrong wire. From now on, I'll just make sure to keep the pinout somewhere I can see it at all times, until the project is done lol.<br />
<br />
I fixed it, and it works perfectly now. And looks pretty damn good too actually :-p<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNT2OYCNWfVOGoB587mGfxNnhm2CPuVgueZ27dtaaKQENQM_mTnRjiHgW2ha2p00hDmbHuoRuhEZQcJIkWwTRkAwfuu0_zdwtpNO8koZi_X87MkVCjYIw1QGCtQvivBzoPzu-diFKVztE/s640/blogger-image-921028552.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNT2OYCNWfVOGoB587mGfxNnhm2CPuVgueZ27dtaaKQENQM_mTnRjiHgW2ha2p00hDmbHuoRuhEZQcJIkWwTRkAwfuu0_zdwtpNO8koZi_X87MkVCjYIw1QGCtQvivBzoPzu-diFKVztE/s640/blogger-image-921028552.jpg" /></a></div>
Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-63531656478390315632012-09-07T12:51:00.000-07:002012-10-15T09:31:28.189-07:00Linux From Scratch - Build EnvironmentRecently, the homie <a href="http://mikestechspot.blogspot.com/" target="_blank">Mike </a>put me up on the <a href="http://www.linuxfromscratch.org/" target="_blank">Linux From Scratch</a> project. I have always wanted to compile Linux, and eventually want to create my own Android-based device. Even if it's just for my desk at home, it's a goal of mine to one day build a multimedia computer where I design EVERYTHING - hardware and software.<br />
<br />
<a name='more'></a><br /><br />
Linux From Scratch gave me all the details and told me where to find all the tools I needed to get started. For my build environment, I'm going to use my MacBook, with a VirtualBox instance of Ubuntu running. I prefer using a VM to dual-booting because I'd rather not mess around with the EFI...and NO I'm not scared!...just don't wanna experiment on my onliest MacBook lol.<br />
<br />
Below is a little doodle I did of my build environment.
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyEJg7Dys61oY9JLpoT4MybB_h9GZrKcsgtz5bVpyGjynEHLAU0f3SX7FGPbYdW5BII7QGU6bdvemZ5qz7QLwTPZzI6Uhd39YFWiTqnq8cSmoDf5tSNLxI4dxJIgrt7bqpaSStU6F0Jpc/s1600/lfs+cfg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyEJg7Dys61oY9JLpoT4MybB_h9GZrKcsgtz5bVpyGjynEHLAU0f3SX7FGPbYdW5BII7QGU6bdvemZ5qz7QLwTPZzI6Uhd39YFWiTqnq8cSmoDf5tSNLxI4dxJIgrt7bqpaSStU6F0Jpc/s640/lfs+cfg.png" width="640" /></a></div>
<br />
<br />
In addition to the Ubuntu VM, I created another virtual disk and partitioned it according to the recommendations in the LFS book. I have begun downloading sources, and will start to build soon! I'll keep progress posted!Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com1tag:blogger.com,1999:blog-7260018730345237004.post-80733426747216360482012-08-31T07:50:00.003-07:002012-10-15T09:31:50.068-07:00Linux From ScratchI have had an interest in Linux for quite some time. Now that I have a bit more understanding of device architecture (core, OS, and application layers), I'd like to try my shot at building Linux from source code, with the end goal learning how to port my own distribution to custom hardware.<br />
<br />
<a name='more'></a><br /><br />
Android is the specific flavor I'd like to eventually work with, but I figure I'd start with Linux.<a href="http://www.linuxfromscratch.org/"> The Linux From Scratch (LFS)</a> project came highly recommended by my friend Mike <a href="http://mikestechspot.blogspot.com/">(check out his blog too)</a>.<br />
<br />
To make things easier, I'm going to build from a virtual machine installation of Ubuntu on my MacBook, so I don't have to go through the hassle of dual-booting, or carrying around another machine. Looking forward to getting this up and running! <a href="http://www.linuxfromscratch.org/lfs/downloads/stable/LFS-BOOK-7.1.pdf">Here's a link to the actual book</a>.Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-28867494444285865572012-06-25T08:02:00.000-07:002012-08-31T08:02:43.124-07:00Arduino + Wii NunchukCame up with a nice little hack with a Wii Nunchuk. The point of the project is to calculate the force of a swing of a Wii Nunchuk, using the built-in accelerometer, and output it on an LCD display. I found some useful information on starting the project <a href="http://todbot.com/blog/2008/02/18/wiichuck-wii-nunchuck-adapter-available/">here</a>, including a handy hardware adapter to allow using the Nunchuk without cutting the USB cable (which I actually bought from<a href="https://www.sparkfun.com/products/9281"> Sparkfun</a>). There's also download links to the library needed to interface between Arduino and Nunchuk via i2c.<br />
<br />
I had to edit a couple of things in the library itself to get it working specifically to my application, but everything turned out really well. It's amazing how much you can learn just by seeking knowledge.Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-23050015612071276302012-06-08T17:30:00.000-07:002012-08-31T07:52:17.328-07:00Arduino Uno + LCDI did some reading on the Arduino forums and learned how the inputs and outputs work, along with interfacing with a LCD screen. I came up with a simple project that would:<br />
<br />
<ol>
<li>Count to ten from 0, displaying the counter on the LCD</li>
<li>Display a message when it reaches 10</li>
<li>Flash a Green LED for 5 seconds</li>
<li>Count to 0 from ten, displaying the counter on the LCD</li>
<li>Display a message when it reaches 0</li>
<li>Flash a Red LED for 5 seconds</li>
</ol>
Having fun with this Arduino thing lol.Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-17862930768027587072012-04-02T09:06:00.000-07:002012-06-01T09:07:39.022-07:00Arduino!So I finally bought myself an Arduino Uno. I have been wanting to get more into micros and embedded computing for a while, but did not know how. Arduino is the perfect solution for relative beginners such as myself. Within a week of buying it, I had a project in mind I wanted to work with. Wanna hear it? Here it go:<br />
<br />
I found the WiiChuck Library, and decided to make a little project which would take accelerometer data from the Wii Nunchuk, do a couple of calculations, and show the result on an LCD. This would give me some experience with Arduino, an external library (WiiChuck), and an internal library (LiquidCrystal). I'll try to update the results here as I make progress.Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-37442159088835147372011-08-04T11:53:00.000-07:002011-08-04T12:00:52.206-07:00The Driving Force Behind Software Evolution<div style="text-align: justify;">Technology has long been a passion of mine. I obviously enjoy gadgets and learning about hardware and iterative software improvements. In addition, I also find it interesting to observe what actually pushes these changes. I often think about the impetus that causes things like <a href="http://en.wikipedia.org/wiki/Moore's_law">Moore's Law</a> to hold true. </div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">At this time, I'm interested in the process that keeps Apple and Google on the cutting edge of innovation. When the iPhone came out in 2007, it was definitely a game-changer, but it was lacking in many, very glaring ways. Even its successor, the iPhone 3G had major features missing, that users cried out for. A few notable features missing from these early devices were, a video camera, MMS capability, and the ability to assign custom desktop wallpaper. </div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">A group of developers (hackers, if you will) saw an opportunity, and took it upon themselves to learn the platform and implement the features that the public wanted, but Apple had not included. The jailbreak community grew from a small subset of the iPhone population to a pretty big chunk. At one point, Jay Saurik, a major figure in the iOS Jailbreak community, estimated that <a href="http://www.saurik.com/id/12">more than 10% of iPhones were jailbroken</a>.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Whether or not this number is true is inconsequential; Apple still took notice, and a legal battle ensued. In 2010, <a href="http://www.wired.com/threatlevel/2010/07/feds-ok-iphone-jailbreaking/">jailbreaking was declared legal in the US</a>. I think this is definitely to Apple's benefit, although I am not sure they would publicly admit it. This appears to be the path of development for the iOS platform:</div><div style="text-align: justify;"><br />
</div><div style="text-align: center;"><b>Jailbreakers introduce a feature --> Apple officially implements it --> The bar is raised for third-party developers</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">I'm not sure whether or not Apple feels the same way, but I can see how the jailbreak community has helped Apple's development of iOS. The jailbreakers implemented features that the iOS community at large wanted. They allowed my iPhone 3G to shoot video. They gave me the ability to send picture mail before AT&T and Apple officially sanctioned it here in the US. <a href="http://www.saurik.com/id/9">Winterboard</a> allowed me to make my iPhone LOOK as fun as it felt.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">These, and many more features that the jailbreak community gave us first, were eventually integrated into iOS. It appears as if Apple does pay attention to what the jailbreakers are doing. Undoubtedly, there are many things the software could do, but the hardware limitations might not allow them to run to Apple's high standard of quality. In this case, some features have to wait until the next hardware iteration. However, it could be speculated that Apple has taken some development cues from jailbreakers. </div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">When Apple does implement some of these changes, the developers on the platform must also seek new ways to utilize the improvements. For instance, the Camera app in iOS 5 will allow users to make basic edits natively. Pretty much the only reason I have Photoshop Express on my iPhone is to crop photos. There are numerous apps in the App Store now that will become obsolete when this new functionality arrives. Because of this, iOS developers will have to adapt. They must come up with new ideas to capture our imaginations. And I am sure they will.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">By Apple perpetually seeking to improve its own platform, it forces the development community to step it up. A stagnant platform becomes boring. I believe Apple realizes that, and will not allow us (as end-users or developers) to become bored with its products.<br />
<br />
With iOS 5, I think the platform has really grown up on iPhone, iPod, and iPad. iOS on AppleTV is still relatively under-developed. There are plenty of features that could be added to the device. I am sure the jailbreakers and Apple both have big plans in store for it. I, for one, am excited to see what's in store next!</div>Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-9117109579489804082011-06-06T09:54:00.001-07:002011-06-06T20:58:40.226-07:00My iOS5 WishlistI've been meaning to post this wish list for the past couple weeks. Since today is the start of WWDC 2011, figured I'd hammer it out before anything is officially announced lol. I've see other people's hopes for the next iteration of iOS, but none of them were the same as mine. Some of the lists were unrealistic, and not likely to be implemented, judging from the type of company Apple is. I believe my list to be a compilation of reasonable features - the logical progression to a still-developing, yet already stellar platform. <br />
<br />
<b>Social Network Integration</b><br />
I would like to see a default option for Twitter, Facebook, AIM, etc. In Preferences, the user would set their preferred clients (i.e. - Echofon, Twitter, TwitBird). From any app, when the user long presses the screen, more options would come up, in the same manner as Select/ Copy/ Paste now, giving the options to Tweet, Post to Facebook, IM, or blog. <br />
<br />
<b>More AirPlay Support</b><br />
I want apps like HBO GO, Xfinity, and ABC Player to support AirPlay. I think this is more likely to happen than HDMI out capabilities in iOS. I'm gonna go out on a limb and say Apple is not interested in people using their iPhones to replace AppleTV; they'd rather sell you both, and give them the ability to talk to each other. <br />
<br />
<b>Player for Downloaded Media</b><br />
Presently, when someone emails me an audio file, I have to find that message every time I want to listen to it. Same thing if I listen to a file from a website - I have to visit that site every time I wanna hear the the track. I would love the ability to import to iTunes directly from the device, but I don't think that'll happen. As an alternative, Apple could implement a separate player for all downloaded media. It could be an extension to Safari that holds all media files, compiles them into a list, and makes them readily accessible whenever the user wants to watch or listen. I am presently experimenting with replacing my laptop with my iPad. I haven't used my MacBook for anything in the past 2 months for anything except software updates and sometimes charging my iOS devices. I occasionally download mixtapes not available in iTunes. In these cases, I have to use my computer to sync. By implementing this feature, they would reduce my dependency THAT much more lol. Which leads me to<br />
<br />
<b>OTA Updates</b><br />
It would make updating so much easier than having to reinstall the entire OS every time. I'm not sure if Apple would implement this because of the inherent security (i.e. recapturing jailbroken devices) in doing a full OS install. Would be nice though.<b> </b><br />
<br />
<b>More SMS/ text input features</b><br />
<ul><li>Rich text - this could be expanded to Mail as well. I would love to be able to say "<b><i>I</i></b>" instead of "EYE" to emphasize myself in the first person. I always thought BBM was cool, and wished iOS had something similar.</li>
<li>Native URL shortener - definitely would come in handy in staying under the 160-character SMS limitation. SMS would automatically sense hyperlinks in text, then connect to a shortening service in the background while the user is typing (configurable in Preferences as well), and replace the longer URL with the shortened one. </li>
<li>Ergonomic iPad keyboard. I've seen some on Cydia, but none like I imagine. I want one that is curved to accommodate my natural hand position on the keyboard.</li>
</ul>I think these few changes will make iOS an even more attractive platform. Can't wait to see what actually happens!<br />
<br />
- Posted using BlogPress from my iPadThomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com1tag:blogger.com,1999:blog-7260018730345237004.post-81560510927501143382011-05-24T17:54:00.001-07:002011-05-24T17:54:56.361-07:00The Sludge Test, Blackbox Software Testing, and Reverse EngineeringRemember back in 9th grade physical science class, there was a lab called the sludge test? We were given a beaker with an unknown mixture of materials (sludge), and had to scientifically deduce its make-up by using methods of physical and chemical decomposition we had learned in class. There was a list of possible substances (water, salt, alcohol, etc), and their extraction methods (boiling, filtration, titration, etc). Based on the combination of tests we performed, we could make educated guesses with some degree of certainty as to make-up of the substance in the beaker. <br /><br />Little did I know, this would be the basis of blackbox software testing (and reverse engineering) I would use in my career down the road.<br /><br />At work recently, my team needed to find the attributes that went into the calculation of a GPS value called "uncertainty." Since this is established in a lower level of software, provided by one of our suppliers, we do not have access to the code which calculates the value. When tasked with investigating this value, I immediately thought about the sludge test. I began thinking about possible parameters which could affect the value, and ways to verify their presence. <br /><br />One of the values which sprang to mind was SNR (signal to noise ratio). I came up with the idea of splitting a strong GPS signal to a very low level, and observing the effect on the uncertainty value. If it drops lower each time the signal is split further (with all other factors held constant), we can safely assume that signal quality is included in the calculation. <br /><br />(Check out my lil drawing I did to illustrate the hardware setup....boredom + iPad is a dangerous combination smh.)<br /><br /><br /><br /><center><a href='http://photo.blogpressapp.com/show_photo.php?p=11/05/24/3232.jpg'><img src='http://photo.blogpressapp.com/photos/11/05/24/s_3232.jpg' border='0' width='281' height='210' style='margin:5px'></a></center><br />Test engineers need to have an open, creative mind. The most effective QA and testing methods involve innovative, colorful thinking. Closing your mind off to an idea before considering it can be costly, in that it can result in missed bugs, which are generally more stressful if discovered later in the process than earlier. <br /><br />This recent epiphany that high school wasn't completely useless really shocked me to the core. I feel an obligation to spread this realization to the world now. Wow. <br />Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-13458557639479458952011-05-20T12:17:00.001-07:002011-05-20T12:17:29.434-07:00Be Nice To PeopleAt one point in my career, colleague and I visited one of our small suppliers. His opinion of the company was not very high. He did not think well of the company, and therefore, felt as if he didn't have to treat the employees well. It was almost as if he thought they were beneath us, just because we were with the giant company, and they were a smaller business, with less resources. He thought they would go out of business soon, and generally was not very friendly to them. That's not to say he was unfriendly, he was just very matter-of-fact - not very personable. <br /><br />I feel that, regardless of the company's status or reputation, we work with PEOPLE, not a faceless company. People have feelings, and can pick up on your attitude, body language, and the way you treat them. If, by chance, this company does go under, the people will still exist. They will go on to take other positions, at other companies, where we might meet again later down the road. What if, the next time we meet, they happen to be in positions to help us out? Something to consider, but not the sole reason to treat someone with respect. <br /><br />I sent individual, personalized emails to every member of the team, thanking them for their support during our visit. It was a small gesture, but hopefully they realize that their assistance was genuinely appreciated. I consider myself to be a people person, and I know that I would enjoy a note like that. I wouldn't expect it, but it would be an added bonus to my day. Something like that sets people apart, and not only looks good on the individual, but reflects well on the company the person represents. It reminds others there is a human element to business operations, and that's what it boils down to: people interacting with other people. <br /><br /><br />- Posted using BlogPress from my iPad<br />Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-37367910262227541332011-05-03T17:13:00.001-07:002011-05-04T07:24:07.369-07:00Learning Computer SecurityI have always been interested in learning computer and mobile device security. I hear the terms "buffer overflow," "jailbreak," "root," etc, and have a genuine interest in learning what security vulnerabilities are, how to find them, and how people incorporate them into mobile device tools like <a target="_blank" href="http://en.wikipedia.org/wiki/PwnageTool">Pwnage Tool</a> and <a target="_blank" href="http://en.wikipedia.org/wiki/Redsn0w">redsn0w</a> for iPhone, and the long list of tools for obtaining root access on Android devices. <br />
<br />
Recently, I started reading <a target="_blank" href="http://www.amazon.com/Computer-Security-ebook/dp/product-description/B000TYYSXM/ref=dp_proddesc_0?ie=UTF8&n=133140011&s=digital-text">Computer Security</a> by Dieter Gollmann. This book is filling in many of the holes I had in my understanding of computer security. Over the past week or so, I've been getting through a chapter every other day or so. They're pretty small-sized chapters, which makes getting through the heavy topics not QUITE so tedious lol. <br />
<br />
I'm considering suggesting this as a course for the Detroit Area Pre-College Engineering Program (DAP-CEP). I've been a nuclear energy instructor with the program for the past 2 semesters, and I participated in numerous DAP-CEP programs in high school. I think an introductory course on computer security would be very interesting and helpful to the students. This book is very heavy reading though, so it would take a lot of manipulation to make the curriculum more easily digestible to a non-professional audience. <br />
<br />
One other book I'm looking forward to reading is <a target="_blank" href="http://www.google.com/products/catalog?oe=UTF-8&hl=en&client=safari&q=mobile+device+security+for+dummies&um=1&ie=UTF-8&cid=17760615658770062324&sa=X&ei=lpXATbG1FcH8rAGkvYG1Bg&ved=0CEgQ8wIwBQ#">Mobile Device Security for Dummies</a> when it comes out in July. <br />
<br />
For some hands-on experience, I have been looking at the topic of penetration testing. <a target="_blank" href="http://www.blackbuntu.com/">Blackbuntu</a> looks very promising for learning about security hands-on. I would like to take a class, but haven't found anywhere in my area with the particular topic I'm looking for yet. <br />
<br />
This topic interests me very much. It's funny how much I enjoy learning this stuff on my own. If I had the class in school, I'm not sure it would be this easy and fun lol. <br />
<br />
<br />
- Posted using BlogPress from my iPadThomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-77616222291696252011-03-04T14:17:00.001-08:002011-03-09T07:09:13.100-08:00PICAXE 14M Board<div xmlns="http://www.w3.org/1999/xhtml"><br />
I recently bought a PIC-AXE starter kit from Sparkfun in an effort to get more embedded/ microprocessor programming experience. The compiler uses a very simple high-level language (BASIC), so it was easy to pick up. <br />
<br />
I wanted to start out with a 'Hello World'-type project. Since interfacing with an LCD is much more complex, i just went with blinking an LED. The logic for this operation was incredibly simple - just 5 lines of code:<br />
<blockquote style="font-family: "Courier New",Courier,monospace;">main: high 0<br />
pause 1000<br />
low 0<br />
pause 1000<br />
goto main</blockquote>Building the circuit was slightly more tricky, but still easy. I made a mistake that I had to fix before it worked. Since I'm using the project board, which has all the 14M's outputs going through the ULN2803 (Darlington transistor array), I had to connect the LED in series with a 330Ω resistor, between 4.5V and the transistor output pin. Initially, I had it between the output pin and ground, so it didn't work.<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBty23WrqmRwSScMUdcH_m4ci5b_57WLnKbX6t830vKcv29QIw_kOpCydaYM0vORplRri0mIkud2ZPpY3EmW-lSMiGVwc8NAG3ChimvhAontO-wDfIcEw13YHAUl5gUQaBednibrgVjB8/s1600/New+Image.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="271" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBty23WrqmRwSScMUdcH_m4ci5b_57WLnKbX6t830vKcv29QIw_kOpCydaYM0vORplRri0mIkud2ZPpY3EmW-lSMiGVwc8NAG3ChimvhAontO-wDfIcEw13YHAUl5gUQaBednibrgVjB8/s400/New+Image.PNG" width="400" /></a></div><br />
Such a simple circuit, but it represented a big break through for me in the learning process. I'm looking forward into digging more into <a href="http://www.amazon.com/PICAXE-Microcontroller-Projects-Evil-Genius/dp/0071703268">Picaxe Microcontroller Projects for the Evil Genius</a>. I really like this book so far...(and no, not just because of the title)!<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyHCY1emiYofhmPFMWkvtR88cDt0ZaS3V3h-v-McW7c6cPpSimlQtwYfIg-tgfomFGX7v6huXaPPGtsF0F2nutgzM2X0-5PeIK9b4gM-wmVaCm2HkHAmpYF7-rkTKPl-M9WM-dWGBJJyE/s1600/photo.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyHCY1emiYofhmPFMWkvtR88cDt0ZaS3V3h-v-McW7c6cPpSimlQtwYfIg-tgfomFGX7v6huXaPPGtsF0F2nutgzM2X0-5PeIK9b4gM-wmVaCm2HkHAmpYF7-rkTKPl-M9WM-dWGBJJyE/s400/photo.JPG" width="298" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Here's my beautifully soldered board ::toot toot::</td></tr>
</tbody></table> </div>Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-68663477333719686282011-02-21T11:31:00.001-08:002011-02-21T11:31:34.902-08:00<div xmlns='http://www.w3.org/1999/xhtml'><p>MobiDevDay 2011</p><p>This weekend I got the opportunity to attend MobiDevDay in Downtown Detroit at the Compuware building. This event is a gathering of mobile developers and enthusiasts in the area. We network and learn from each other through a series of lectures and presentations. </p><p/><p>At the event this time, there were presentation on Android, iOS, Windows Phone 7, Kinect, and a few other development technologies. </p><p/><p>Going into the event, I was excited at the prospect of getting an introduction to more platforms, as well as possibly learning more about iOS and Android. I was certainly not disappointed!</p><p/><p>I attended sessions on XCode, iOS Programming with Blocks, Intro to Android 2.x, Intro to Windows Phone 7, and Connect with Kinect. Each of these sessions served as an introduction, or overview, but the presenters each gave their own contact information, as well as links to resources for the topics which they presented. </p><p/><p>Definitely looking forward to networking with the people I met at this event, and becoming more involved in the local developer's communities in and around Detroit!</p></div>Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-81211869579448844932010-08-04T07:17:00.000-07:002010-08-04T12:04:45.211-07:00iPhoDroid: My Adventure<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrjsvcvvU9uZGPSydae7-fnhW9ii0BXixR7sEMdh7AIS3SHdM1uaNdz0X80wutPbxVqeCTh7k3RjTbv-T6y3eSwzCuH-aOGbAOUEFk7uctqNfilwWb08hl3_p_Uex0iVZVa1sTpQHvHJg/s1600/Linux+penguin-computing.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrjsvcvvU9uZGPSydae7-fnhW9ii0BXixR7sEMdh7AIS3SHdM1uaNdz0X80wutPbxVqeCTh7k3RjTbv-T6y3eSwzCuH-aOGbAOUEFk7uctqNfilwWb08hl3_p_Uex0iVZVa1sTpQHvHJg/s320/Linux+penguin-computing.jpg" /></a></div><br />
<br />
A couple weeks ago, I heard about the <a href="http://www.iphodroid.com/">iPhoDroid project</a>. At the prospect of dual-booting my iPhone with iOS and Android, my palms got sweaty and my knees got weak. It felt like the room was spinning and my tongue got numb.<br />
<br />
So I decided to give it a shot.<br />
<br />
I read up about the project and the prerequisites, and got everything I needed to get this accomplished. One of the requirements was that the iPhone had to be jailbroken (check!) not by Spirit (DOH!)*. So I went through the process of restoring my iPhone to 3.1.2 and then jailbreaking with Pwnage Tool (my favorite anyway).<br />
<br />
*<span style="font-size: x-small;">In a moment of sheer curiosity a while back, I jailbroke with Spirit...it was so easy, it <a href="http://stackoverflow.com/questions/2668867/what-does-jailbreak-do-to-the-iphone-technically">made me wonder</a> why people would go through any OTHER methods of jailbreaking. </span><br />
<br />
<a name='more'></a><br />
<br />
After that, I downloaded <a href="http://iphodroid.googlecode.com/files/iPhoDroid_0.6beta_R12d_%28for3G%29.zip">iPhoDroid 0.6 beta R12d (for3G)</a> to my MacBook and followed the instructions. Very easy. One thing that threw me off is that during the install process, there is no touchscreen, so I had to press the power button to scroll and the home button to select.<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiws13ASZzgxbI4f4GfVPzqNCFwTmc7G8XfMbdNbMbrrZfohMiyij6yYLpMNBqg__z9mqxvv85H8zUS0FUOOrqsUMhADtR_ZCyoys9McVf2tg-xoUtrC6YgY7s0akU1ZJuRnNdF4-ZBD1A/s1600/photo+1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiws13ASZzgxbI4f4GfVPzqNCFwTmc7G8XfMbdNbMbrrZfohMiyij6yYLpMNBqg__z9mqxvv85H8zUS0FUOOrqsUMhADtR_ZCyoys9McVf2tg-xoUtrC6YgY7s0akU1ZJuRnNdF4-ZBD1A/s320/photo+1.JPG" /></a></div><br />
<br />
While installing, it appeared to freeze at a point. I looked up the last message where the install stopped (can't recall it right now, sorry), and <a href="http://www.idroidproject.org/forum/">the forum</a> just said to run the install again. After that, it worked!<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxPVNXFYpt9_2syHG1K4g_OR4B4Kema_s8QkvaGo37bBpOup-emcstKr7FsT0L91_qA5ptH53o_06dz_E5C4EpGsAT7KrpuIBi1uylBGnhGMxdOa82-8aBV4FEReLKypxZ-M63M4walkI/s1600/photo+2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxPVNXFYpt9_2syHG1K4g_OR4B4Kema_s8QkvaGo37bBpOup-emcstKr7FsT0L91_qA5ptH53o_06dz_E5C4EpGsAT7KrpuIBi1uylBGnhGMxdOa82-8aBV4FEReLKypxZ-M63M4walkI/s320/photo+2.JPG" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2wqVbmBi7pgcFNbfDewSpxso4hCoAyJ6Z4z66Mm-9_wFxA0Nn5Vp9mhDCfp0s4X5QLMEofccG1rd6abJHTB37oVNSNk-LCix9mLJyvgrB_fBf3CpgvBURuDxa_AKBLEnRaZksy854jiA/s1600/photo+3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2wqVbmBi7pgcFNbfDewSpxso4hCoAyJ6Z4z66Mm-9_wFxA0Nn5Vp9mhDCfp0s4X5QLMEofccG1rd6abJHTB37oVNSNk-LCix9mLJyvgrB_fBf3CpgvBURuDxa_AKBLEnRaZksy854jiA/s320/photo+3.JPG" /></a></div><br />
<br />
Once Froyo was installed, I actually hugged my phone close to me because I was so excited. People around might have given me weird looks, I dunno, but whatever - I was happy. That happiness tinted a little bit when I realized touch screen still didn't work....and it crashed, but I was still elated at the fact that Android was indeed running on my iPhone.<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkS0eNPjR2mCB5ltjo0p2VxkSlaB-N1BbDBpypZ-m8M143NKDdTnWvbqdElPbw9e06_wIcCbTNEGFJvTymsR0uBIYvylgMCAlEbNWQ5u81eFS_ZHtcCjYIx7CmUBMU-yU6J4R5u_dR7IM/s1600/photo+4.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><br />
</a></div>And now I even had a problem to solve! YES!<br />
<br />
So I found <a href="http://code.google.com/p/iphodroid/updates/list#">the issue</a> and followed the instructions. I verified the SHA-1 hash on the download. That checked out fine. I reinstalled Open iBoot and the Froyo distro, this time watching the output carefully. There were no errors. But while the OS was loading, I mistakenly rebooted....and bricked my iPhone. However, I didn't panic. <a href="http://www.iphodroid.com/bricked/">I found this</a>. <br />
<br />
So now, back at square one. I restored, and re-jailbroke. This time, with redsn0w. Went through the same process...<a href="http://www.google.com/url?sa=t&source=web&cd=9&ved=0CDsQtwIwCA&url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D7GL6LH6ufhM&ei=R3ZZTNLuFsKNnQeX39SqCQ&usg=AFQjCNH04TqH46ijO5m-fW7_XQNqIqhtnA&sig2=kQo7TV0YLAKJPHeHt5p53w">AND IT WORKS!!!!</a><br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkS0eNPjR2mCB5ltjo0p2VxkSlaB-N1BbDBpypZ-m8M143NKDdTnWvbqdElPbw9e06_wIcCbTNEGFJvTymsR0uBIYvylgMCAlEbNWQ5u81eFS_ZHtcCjYIx7CmUBMU-yU6J4R5u_dR7IM/s1600/photo+4.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkS0eNPjR2mCB5ltjo0p2VxkSlaB-N1BbDBpypZ-m8M143NKDdTnWvbqdElPbw9e06_wIcCbTNEGFJvTymsR0uBIYvylgMCAlEbNWQ5u81eFS_ZHtcCjYIx7CmUBMU-yU6J4R5u_dR7IM/s320/photo+4.JPG" /></a></div>Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com1tag:blogger.com,1999:blog-7260018730345237004.post-44705473723691471322010-08-02T07:37:00.000-07:002010-08-02T07:54:39.890-07:00Motorola 68000 ProgrammingFunny how if you truly have an interest in something, you'll come back to it. In college, I had a terrible experience with assembly programming. My professor, who was probably a skilled engineer at work, regrettably was not a very good teacher. It was obvious that he knew the material, but could not find an efficient way to communicate the concepts to the class. As a result of that, I was kind of turned off by 68k programming.<br />
<br />
Recently, the urge to learn assembly has crept back in my mind, and I picked up my book again and downloaded the <a href="http://www.easy68k.com/">Easy68k </a>IDE. I'm currently strengthening my foundation of the 68k processor and microprocessors in general. Now that it's not in a forced, stressful environment, it's actually much more enjoyable. I see how this could have been fun in college, under the right circumstances lol.<br />
<br />
<a href="http://stackoverflow.com/questions/3356344/do-different-68k-simulators-have-different-trap-tasks/3382971#3382971">Here's</a> some progress on the subject.Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-26196308932234841562010-07-12T11:28:00.000-07:002010-07-13T09:45:07.423-07:00Eclipse and Java for the Total BeginnerSo I decided to get serious about learning <b>Java</b> today. I took a course in college, but it didn't really prepare me as much as I'd like. These tutorials that I found are really helpful. They are not only filling in the gaps I missed in Java and OOP, but teaching me the features and functionality of the <b>Eclipse IDE</b> as well.<br />
<br />
I am getting to implement various aspects of <b>Agile/ XP Methodologies</b>. I'd previously read about these, but am now getting a chance to put them into practice. I am learning about <b>Unit Testing</b> and <b>Test-Driven Development</b>, by creating test cases before the classes. I am also building competency using <b>JUnit testing framework</b>, and the <b>Eclipse IDE </b>as a whole. <br />
<br />
In addition to these video tutorials, I'm also taking online training on Principles of Object-Oriented Programming <br />
through my job. The goal is to be a more well-rounded programmer with a strong understanding of fundamental primciples. Eventually, this will help me properly dive into Android programming as well.<br />
<br />
Check out the <a href="http://eclipsetutorial.sourceforge.net/totalbeginner.html">Java tutorials</a> out if you're interested!Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0tag:blogger.com,1999:blog-7260018730345237004.post-14382626207549152252010-07-06T09:02:00.000-07:002010-07-06T09:02:05.796-07:00Aahhhh, so THAT'S the big deal about 4GI decided to do some reading on 4G and see what all the fuss is about.<br />
<br />
Now I know.<br />
<br />
If my understanding is correct, it just switches all communications to a really fast IP-switched data network. In contrast, 3G used circuit-switched technology for voice and IP for data. 4G implements VOiP for calls, so there's no need for separate networks for voice and data. And looking at the theoretical speeds (100 Mbit - 1Gbit/ sec), I can clearly see what the commotion is about. I would LOVE to work on implementing this network. Can't wait till I can at least access it here lol.Thomashttp://www.blogger.com/profile/11201599748665391822noreply@blogger.com0