<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
> <channel><title>pyehouse</title> <atom:link href="http://www.pyehouse.com/feed/" rel="self" type="application/rss+xml" /><link>http://www.pyehouse.com</link> <description>by tech, for tech</description> <lastBuildDate>Sun, 12 Feb 2012 17:57:43 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.2</generator> <xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /> <item><title>Interviewing for Your Next Tech Job</title><link>http://www.pyehouse.com/2012/02/12/interviewing-for-your-next-tech-job/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=interviewing-for-your-next-tech-job</link> <comments>http://www.pyehouse.com/2012/02/12/interviewing-for-your-next-tech-job/#comments</comments> <pubDate>Sun, 12 Feb 2012 17:57:43 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[personal]]></category> <category><![CDATA[interview]]></category> <category><![CDATA[job interview]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=464</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2012/02/12/interviewing-for-your-next-tech-job/">Interviewing for Your Next Tech Job</a></p><p>For those unaware of such trivialities, I recently found myself needing to find a new employer. This weekend caps my first week with my new employer, Resource Data, Inc. As was recently (minutes ago!) pointed out to me, "You never quite know if you've made the right decision until the first few days have passed." [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2012/02/12/interviewing-for-your-next-tech-job/">Interviewing for Your Next Tech Job</a></p><p>For those unaware of such trivialities, I recently found myself needing to find a new employer. This weekend caps my first week with my new employer, <a
title="Resource Data, Inc." href="http://www.resdat.com" target="_blank">Resource Data, Inc</a>. As was recently (minutes ago!) pointed out to me, "You never quite know if you've made the right decision until the first few days have passed." I am happy to report that after my first few days, I'm content in the choice I've made. Everyone has been very welcoming and I'm looking forward to becoming a productive member of a good group of people doing quality work. That said, as I've discussed the process of bringing me aboard with my project manager, it was stressed to me how important interviewing is and how frequently it seems that tech candidates have problems with the interview step. I want to share my approach to interviewing for anyone who may find it helpful.</p><p><span
id="more-464"></span></p><h3>How to Interview</h3><p>The typical hiring process involves a screening process up front where candidates are weeded out based primarily on what they submit on their resume. This is the most optimistic portion of the process in that the resume is what you are saying about yourself. It is presumably your professional life presented in the best possible light. If what you say about yourself is at least as good as what the next person says about themselves, you have a shot at moving on to the interview stage. If the resume stage is where you are discriminated on by what you think of yourself, then think of the interview stage as being discriminated on by what your potential employer thinks of you. Which brings us to the first rule:</p><h4 style="padding-left: 30px;"><em>Give them more information, not less.</em></h4><p>Not every question you will be given will target something where you shine. It doesn't matter whether it is a soft skills interview, measuring your social fit within the company and the team or if it is a technical skills interview, measuring the breadth and depth of your technical ability. Take every question as an opportunity to branch the conversation in a tactful and meaningful way into something you want the interviewer to know about you. As an example, if in a skills interview you are asked about something which you aren't 100% sure of, admit as much but then offer your best guess and let them know the reasoning you use to reach that guess. It gives the interviewer a deeper glimpse into how you think and what you bring to the table in terms of analysis. Just be clear that that is what you are doing, attempting to deduce the answer. Don't just guess to get it right. That would break the next rule:</p><h4 style="padding-left: 30px;"><em>Don't try to fool your interviewer.</em></h4><p>Really. Don't. Just don't do it. While in some cases your interviewer might be someone with less experience than you that you will be able to fool, in many cases interviewers are selected because they have the expertise and experience to properly judge not only the response given but also the nature of that response, whether it is true or just BS. If you don't know an answer, say so and do it honestly. But if you recognize the general area of concern about the question (database synchronization, team leadership techniques, etc.), then point out any relevant knowledge you have that you feel may pertain to the question. Asked about something that you suspect is related to database synchronization but aren't sure, tell your interviewer that you aren't familiar with that and then say that you suspect it is related to database synchronization. If you are given the opportunity to continue, perhaps you tell them that based on the name of the technology involved, you suspect it involves the XYZ database and seems like it involves offline databases. Then, if possible, mention your experience with the Humbug database which you performed synchronization activities with. Then extend that to how you feel the offline aspects might differ and what you might have to take into account. At each step of the way, let the interviewer know not just what you are thinking but why you are thinking.</p><p>The next rule is for my project manager and I have to admit, I agree. If you are participating in a technical interview:</p><h4 style="padding-left: 30px;"><em>Come prepared to participate within the expected interview format.</em></h4><p>What does that mean? If you are in a technical interview, you should expect at least three things: 1) you will be asked about specific technical items or concepts (OOP, framework usage, etc.); 2) you will be asked about your previous projects; and 3) you will be asked to stand up and provide actual samples of work. Do not act as if you have been ambushed when one of these scenarios arises. While it may be unlikely that CakePHP will be discussed during your interview for a .NET development position, you should not be surprised when you are asked to discuss the .NET collections classes or generics and how they are used. Come prepared to discuss your previous projects and not just surface discussion but details like design decisions, implementation difficulties, support issues. And probably the most important point, be prepared to actually do something technical. Be prepared to provide a data model or write a method or sketch out a class hierarchy. When called upon to write code during an interview, don't be afraid to point out that you know a class exists to do X, you don't know the specifics, but you would use it just so.</p><p>One last tip:</p><h4 style="padding-left: 30px;"><em>Look and act like you want to be there.</em></h4><p>When I was still an IT larva, I interviewed with several companies for a paid internship during my final year of college. At one interview I was greeted by a guy in sweats and sandals. In the end I was chosen along with 7 others for the positions. Months later when we had all moved out to California we had a chance to talk to the interviewer in a more casual setting and the question of his apparel during the interview was brought up. He mentioned that if any one of us had shown up dressed as he had been for any of the followup interviews, he would have dropped us from consideration. A test? Whimsy? I can't say. What I do know is that each of us wanted the position and each of us presented ourselves as qualified to present the company. Even if you are guaranteed that you will never speak to another human being during business hours so long as you continue working there, do not assume you can dress however you like. Be the professional your potential employer expects you to be. This extends to everything from dress to speech, from verbal to written communication. Exhibit self control even if your interviewer has just asked your 30+ years experienced professional self something taught to first year students in your chosen field. Do this not because you want to suck up to them but because in the course of everyday life we meet people who sometimes fail to meet our personal expectations for membership in humanity and yet we must still interact with these people. You must show that you are capable of not blowing up at slights, real or perceived. And unless your last name is Warbucks, show your interest in being there. You don't have to gild the cage but letting your interviewers know that you appreciate their time and consideration, that you look forward to working for XYZ Widgets in the future and that you are sure you can provide a positive impact... all of that speaks toward your desire to continue working there. If you appear bored or put out in going through the process of letting the company vet you, all things being equal you will be passed up for the person who actually seems like they want to be there.</p><h3>Interviews are a Courtship Dance</h3><p>Okay, given the stereotypical view of the usual techie's social skills, perhaps equating interviewing with a courtship process is a flawed beginning. But realistically it fits. An employment relationship is certainly not as trivial as the interaction at the local Burger King drive through even if it doesn't meet the level of marriage. Regardless it is a major step for both sides. Sure, you are tying yourself to a new position, new people, new responsibilities and you don't know until you start just how well things are going to work out. But injecting a new employee into the mix is never a cost-free option for the company either. Aside from the costs incurred to advertise the position in the first place, there are also the costs in time to interview candidates, usually multiple times. Once you are hired on, there's the overhead of setting you up to begin with (i.e. HR setting up direct deposit, retirement accounts, insurance paperwork as well as IT setting up accounts, access, new equipment purchases and setup) but also ongoing costs (i.e. employment taxes). Then there's the disruption to the normal work flow while you are brought up to speed. I ran across several companies during this most recent job search who made a point of saying they look for good people not just skill sets. The point being, they don't want someone who is specialized now but who may not be able to change to fit future requirements. Good companies look for good people who might take a little extra work in the short run but in the long run will bring more value to the company.</p><p>Keeping these long term interests in mind during the entire interview process will help you make the right decisions at each step and help you to prepare appropriately for your next job hunt.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2012/02/12/interviewing-for-your-next-tech-job/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Data Access with .NET Framework 4 (Exam 70-516)</title><link>http://www.pyehouse.com/2012/01/19/data-access-with-net-framework-4-exam-70-516/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-access-with-net-framework-4-exam-70-516</link> <comments>http://www.pyehouse.com/2012/01/19/data-access-with-net-framework-4-exam-70-516/#comments</comments> <pubDate>Thu, 19 Jan 2012 15:35:39 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[development]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=456</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2012/01/19/data-access-with-net-framework-4-exam-70-516/">Data Access with .NET Framework 4 (Exam 70-516)</a></p><p>I passed my 70-516 exam yesterday with a score of 860. Not as great as I would have liked but not nearly as bad as I had feared. Overall I'm pleased. For what it's worth, I followed the same route many others have followed in preparing for the exam. I started with the MCTS Self-Paced [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2012/01/19/data-access-with-net-framework-4-exam-70-516/">Data Access with .NET Framework 4 (Exam 70-516)</a></p><p>I passed my 70-516 exam yesterday with a score of 860. Not as great as I would have liked but not nearly as bad as I had feared. Overall I'm pleased. For what it's worth, I followed the same route many others have followed in preparing for the exam. I started with the <a
title="O'Reilly 70-516 Training Kit" href="http://shop.oreilly.com/product/9780735627390.do" target="_blank">MCTS Self-Paced Training Kit (Exam 70-516): Accessing Data with Microsoft .NET Framework 4</a> which I obtained through the <a
title="O'Reilly Safari Books Online" href="http://my.safaribooksonline.com/?portal=oreilly" target="_blank">O'Reilly Safari Books Online</a>. The nice thing is you also get access to the CD contents which includes a copy of the MeasureUp testing software so you can take practice exams. I imagine it isn't as up to date as what you would get if you went straight to MeasureUp or if perhaps the included copy of the software has a smaller question pool, but it was still helpful.</p><p>In any event, once I had finished going through the book and making sure to actually run through the examples and make an effort to answer the questions at the end of each chapter without looking back, I started going through the links from this <a
title="Exam 70-516 objectives with MSDN links" href="http://blog.ondrejsv.com/post/Exam-70-516-objectives-with-MSDN-links.aspx" target="_blank">blog post by ondrejsv</a>. For each link, I would read through the linked article and then either follow relevant links in a new tab or open a new tab and search for a topic that seemed to be potentially of interest. Think of it as doing a depth-first-traversal of the MSDN articles. What I found was that there were interesting bits of information that were uncovered in the MSDN articles, especially in those containing sample code, which dealt with some topics in greater detail than the material covered in the book. In that way, the book was a good baseline for preparation but the MSDN links fleshed things out a bit more.</p><p>In conjunction with this, I continued to go through the sample tests. I kept a text file open and jotted down items that I was having difficulty with and would then spend time doing searches online for additional material covering that topic, both within and outside of MSDN. Additionally, I started creating mini-projects. Initially the projects would be very straightforward, switching back and forth between thick clients and web clients. Then I expanded to web services with various clients, splitting the EF entities into their own assembly, and so on.</p><p>I'm now considering which I should pursue next, 70-513 (covering WCF), 70-515 (Web apps) or 70-511 (Windows apps). If I'm going to shoot for MCPD, I will definitely need 513, but would need to choose which I would specialize in, Web apps or Windows apps. Still, not every project will involve WCF so perhaps for the short term I would be better off picking 515 or 511.</p><p>In any event, I've been told that 516 is considered to be more difficult than the other exams. Not having taken the others nor even studied them, I can't say. For those who have, I'm curious what your opinion is.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2012/01/19/data-access-with-net-framework-4-exam-70-516/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Building Buzz for your iOS App</title><link>http://www.pyehouse.com/2011/12/09/building-buzz-for-your-ios-app/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=building-buzz-for-your-ios-app</link> <comments>http://www.pyehouse.com/2011/12/09/building-buzz-for-your-ios-app/#comments</comments> <pubDate>Fri, 09 Dec 2011 16:19:08 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[development]]></category> <category><![CDATA[app store]]></category> <category><![CDATA[buzz]]></category> <category><![CDATA[iOS]]></category> <category><![CDATA[ipad]]></category> <category><![CDATA[iphone]]></category> <category><![CDATA[marketing]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=453</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2011/12/09/building-buzz-for-your-ios-app/">Building Buzz for your iOS App</a></p><p>I recently received the following email: Hi Lynn, I hope you are doing well and that this holiday season isn't keeping you too busy. The reason for my e-mail is because I have a friend from College who just finished an iOS game and is looking to get some press for it. I wanted to know if there [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2011/12/09/building-buzz-for-your-ios-app/">Building Buzz for your iOS App</a></p><p>I recently received the following email:</p><blockquote><p>Hi Lynn,</p><p>I hope you are doing well and that this holiday season isn't keeping you too busy.</p><p>The reason for my e-mail is because I have a friend from College who just finished an iOS game and is looking to get some press for it. I wanted to know if there are any tips that you could share with him to help his game out there. If you could help him get in contact with any iOS websites, I'm sure he would be very grateful too.</p></blockquote><p>What I responded with is more or less what I wish I had done with Centripetal and would do if I had it all to do over again. To begin with, this is premised on the notion that you are a small time developer, have virtually no reputation beyond your circle of friends and are planning to release your app with the hopes of making some money on it.</p><p>What I found is that timing is very important. When an app is first released on the app store, it will show up on lists all over the web. Ask anyone who has released a small app with little exposure what their sales looked like and they will tell you sales were highest within the first 24-48 hours of app store availability. So if you do absolutely nothing else, you will see a bump in sales and therefore in eyes on your app during that period. You want to make the most of that.</p><p>My suggestion then is to try to focus on driving your marketing and buzz building on that moment when your app first arrives on the app store. Granted, I haven't tested this since as I said this is what I would like to have done, but work with me here. <img
src='http://www.pyehouse.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Let's assume for now that your app is not now nor has it ever been available for sale on the app store. You can make it available for review when it is done, but put the release date out into the future. This won't affect the review cycle but will keep it from being up for sale immediately after approval. Once it is approved, you can push the release date back to a current date and have control over the actual release time within a 24-48 hour window.</p><p>Next, start building buzz <strong>NOW</strong>! Don't wait for the game to be complete. Got a blog? Blog about your game. Hint at what features you're going to have. Hold a poll about which feature to include or how to implement it. Get feedback. Drum up interest. Have people anticipating the game's release. The more people get your game and at this state, the idea of the game, put in front of them the more likely they are to mention it to friends or at least share the link.</p><p>Can you create a gameplay or app usage video? If your app can be simulated on your Mac without any loss of features, then use something like <a
title="Screenflick" href="http://www.araelium.com/screenflick/" target="_blank">Screenflick</a> to record on your Mac. If that isn't an option, you can use a separate recording device to view a physical handheld in action. Of course that's not going to look as good, but what can you do? The point is, you want folks to see what the game is like. During development you can release videos of beta builds if you think they will be enticing. As you approach release you can snazz it up with music and such. For actual release, you definitely want to have a high quality app video available for your users to see.</p><p>You also want to have a webpage or website devoted to your app. It should make people want your game. To do this, list things people will look for in an app like yours. If it's a game, tell them how fun it will be, how many levels it has, what groundbreaking new playstyle it involves. And link to the reviews for you app.</p><p>Ah yes, reviews. I used <a
title="Organization for App Testing Standards" href="http://www.gotoats.org/wevegot.php" target="_blank">O.A.T.S.</a> to get a list of sites that do reviews without accepting money to create or promote your review. It's less expensive and more honest. Of course it is possible to get an honest review that you've paid for, but there is always the likelihood of a bias. If that doesn't bother you, you can of course find many sites which are willing to take your money in exchange for a review and a little extra to move yours to the top of the pile. I leave that choice to you.</p><p>To get your app into a reviewer's hands you will either have to release your app and provide promo codes, which all review sites accept but which blows the whole "control your launch date" idea out of the water, or you will need to provide them beta access through something like <a
title="TestFlightApp" href="http://testflightapp.com" target="_blank">TestFlightApp</a>. TestFlightApp is free and while it requires some extra fiddling on the part of the reviewer and the developer, it's pretty easy to use. I imagine a number of review sites would be willing to meet you half way and make use of this. Regardless, no reviewer is going to want to have to pay for your app in order to review it, especially if you are requesting the review. At this point, you have to wait for the review. This could take awhile. Weeks. Perhaps even a month or so. Technically there's no guarantee (unless you bought it) that you will even get a review. It's up to you how long you wait.</p><p>Once you have a satisfactory number of positive reviews you can link to, set them up on your site and in your iTunes app store description. Make the app available. Once you see it on the app store, make additional announcements about its availability anywhere you can. Ask friends to spread the word. If you're willing to spend money, you could consider advertising on sites you would expect users of your app to frequent. Advertising options vary greatly across websites. If you wish to do this, contact the webmasters of those sites directly for details.</p><p>Now, why all this fuss over timing everything to hit all at once? As I said, you get a free bump when your app is first listed on the store, especially if it is free or $0.99 because there are a number of sites and services that exist solely to scrape the iTunes App Store and list all new apps in those price ranges. It is my belief that if you can build enough buzz such that a large number of people are discussing and playing your app at the same time, it increases the odds that your app will then be mentioned to others, i.e. that it will become a hot item. And that's what this is about, increasing your odds. As I said to begin with, the premise here is that you are an indie developer with no name, no buzz and nothing to build on. If you already have established credentials, you can build on that and you'll see more success on average with the same app than if you had nothing to start with.</p><p>Of course, that's not the end of it. You should never consider your app 'finished'. Always consider things you could do to expand on it, build on it. When you release updates that provide more features or more fun or more playtime to users, it increases the perceived value and provides an opportunity for more buzz. Keep making the announcements, keep interest up.</p><p>And if your app is already on the store or if you simply disagree with this notion of opening day timing, then you can of course bust the sequence up. Release sooner, don't hold back. But the rest of it still makes sense. You still want that app use or gameplay video. You want that website. You want to build interest before you ever release anything. You want the reviews. Of course if the app is already up, you can use promo codes.</p><p>Whichever way you go, however you choose to market your app, the important thing is to give the user something they want to use and something they want to share with their friends. There's no marketing with higher quality than simple word of mouth. Hopefully, you'll be able to build your own Angry Birds. If you do follow my advice here, particularly if it's not what you were originally planning to do, I'd appreciate it if you drop me a line and let me know how it goes.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2011/12/09/building-buzz-for-your-ios-app/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Facebook Page Tab and WordPress</title><link>http://www.pyehouse.com/2011/11/06/facebook-page-tab-and-wordpress/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=facebook-page-tab-and-wordpress</link> <comments>http://www.pyehouse.com/2011/11/06/facebook-page-tab-and-wordpress/#comments</comments> <pubDate>Sun, 06 Nov 2011 22:18:58 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[development]]></category> <category><![CDATA[facebook]]></category> <category><![CDATA[facebook page]]></category> <category><![CDATA[wordpress]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=446</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2011/11/06/facebook-page-tab-and-wordpress/">Facebook Page Tab and WordPress</a></p><p>Previously I discussed what I went through to use the generic SSL certificate that came with my ICDSoft hosting service with the Facebook application I set up for my Facebook Page tab. I mentioned at the end that I also had to do a little rejiggering to use a WordPress page for the Facebook app. [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2011/11/06/facebook-page-tab-and-wordpress/">Facebook Page Tab and WordPress</a></p><p>Previously I discussed <a
title="Facebook Page Tab, SSL and Hosted Websites" href="http://www.pyehouse.com/2011/11/04/facebook-page-tab-ssl-and-hosted-websites/" target="_blank">what I went through to use the generic SSL certificate that came with my ICDSoft hosting service with the Facebook application I set up for my Facebook Page tab</a>. I mentioned at the end that I also had to do a little rejiggering to use a WordPress page for the Facebook app. It's actually pretty simple and I'm going to share that, too. You may want to review the <a
title="Add an iFrame Application to your Facebook Page" href="http://www.hyperarts.com/blog/tutorial-add-an-iframe-application-to-your-facebook-fan-page-fall-2012/" target="_blank">setup steps for a Facebook app as a Facebook Page tab</a>. Got it? Good, let's move on.</p><p>As you saw, when setting up a Facebook app for use as a Page tab, Facebook asks you to give them a secure (https) URL to point to, which they embed into an iframe on the page. The URL will be sent to the browser to be loaded by the client. Whatever is served up will be viewed in an iframe with a max width of 520 pixels. It is critical to understand that much. If you don't pay attention to the 520 pixel width limitation, your FB page will look rather ugly and likely have horizontal scrollbars and only partially revealed assets.</p><p>You'll want to make sure that your WordPress site will work when invoked from the https URL. I imagine this will typically be the case. I know for me, simply changing the URL to https was sufficient and I could easily traverse my WordPress driven site via SSL. If this isn't the case for you and you want to use WordPress to handle your Facebook Page tab content, you are going to have to find some means of getting your WordPress site to respond to https URLs.</p><p>Let's assume for a moment that you do manage to get SSL working for your WordPress site. Next you are going to need to create a page which you want to hit via your FB app. That much is easy, but there are two issues you will likely need to resolve. One is that your new FB app page is going to show up in any list of pages for your WP site which you have and the other is that your new FB WP page is not going to be styled optimally for inclusion as an FB app page.</p><p>Starting with the first point, why would it matter that your FB app page on your WP site is going to show up in the list of pages? Frankly, because of the second point, optimizing it for FB app usage. It's likely going to look quite different because of how it will be used, and so it would be good not to have it navigable under normal browsing situations.  To eliminate this, for starters if you are using the 'Pages' widget in your sidebar, go to your WP dashboard and open 'Appearance-&gt;Widgets' and click to expand the 'Pages' widget. By default, WP allows an 'Exclude' area which you can enter the page ID of each page, separated by commas, which you do not want to have show up in the 'Pages' widget. More tricky are themes which include the pages in the header or other areas. Unless the theme provides the option to not list certain pages, you will find yourself in a bit of pickle, perhaps having to go so far as to custom edit your header in order to not list them. Because that is going to depend on which theme you have installed, it's beyond the scope of this article to discuss code customization.</p><p>The second point, however, will involve some customization in the form of a custom page template. <a
title="WordPress Codex on Creating Your Own Page Template" href="http://codex.wordpress.org/Pages#Creating_Your_Own_Page_Templates" target="_blank">Here is what the WordPress Codex has to say on creating your own page template</a>. It's a bit barebones, so let me help you out a bit. First, create a new file in your theme's folder called 'customfbpage.php'. The contents of the file should look like this:</p><p><code>&lt;?php<br
/> /*<br
/> Template Name: Facebook Page<br
/> */<br
/> ?&gt;</code></p><p>You can upload this via FTP or your website's control panel or whatever other means you have of pushing new files up to your template folder. Now, go to your WordPress console and go to the Appearance-&gt;Editor link:</p><p
style="vertical-align: top;"><img
class="size-full wp-image-448" style="display: inline-block; vertical-align: top;" title="WordPress Appearance->Editor Dashboard" src="http://www.pyehouse.com/wp-content/uploads/2011/11/fbapp-1.png" alt="" width="161" height="168" /><img
class="size-full wp-image-449" style="display: inline-block; vertical-align: top;" title="WordPress Appearance->Editor Dashboard Files List" src="http://www.pyehouse.com/wp-content/uploads/2011/11/fbapp-2.png" alt="" width="219" height="272" /></p><p
style="vertical-align: top;">On the right you will see a list of files which can be edited for your template. You can see in my snippet I have only a scant few because I'm using a child template. YMMV. Now you need to find the 'page.php' for your template. If you are using a child template, you will need to open the parent template's copy of page.php if you haven't already overridden it in your child. Otherwise click the child copy. Regardless, just copy all of the text within by highlighting all of it, right clicking, and choosing 'Copy'. Now go back to the customfbpage.php and edit that. Click below the comment block and paste the contents in by right clicking and choosing 'Paste'. I'm using the NotesIL theme as my parent theme, so this is what I see:</p><p><code><br
/> &lt;?php<br
/> /*<br
/> Template Name: Facebook Page<br
/> */<br
/> ?&gt;</code></p><p><code></code><span
class="Apple-style-span" style="font-family: Consolas, Monaco, monospace; font-size: 12px; line-height: 18px; white-space: pre;">&lt;?php get_header(); ?&gt;</span></p><pre>	&lt;div id="container"&gt;
		&lt;div id="content"&gt;
			&lt;?php while ( have_posts() ) : the_post(); ?&gt;
			&lt;div id="post-&lt;?php the_ID(); ?&gt;" class="&lt;?php notesil_post_class(); ?&gt;"&gt;
				&lt;h2 class="entry-title"&gt;&lt;?php the_title(); ?&gt;&lt;/h2&gt;
				&lt;div class="entry-content"&gt;
					&lt;?php the_content(); ?&gt;
					&lt;?php wp_link_pages( 'before=&lt;div class="page-link"&gt;' . __( 'Pages:', 'notesil' ) . '&amp;after=&lt;/div&gt;' ); ?&gt;
					&lt;?php edit_post_link( __( 'Edit', 'notesil' ), '&lt;p class="edit-link"&gt;', '&lt;/p&gt;' ); ?&gt;
				&lt;/div&gt;
			&lt;/div&gt;&lt;!-- .post --&gt;
			&lt;?php comments_template(); ?&gt;
			&lt;?php endwhile; // end of the loop. ?&gt;
		&lt;/div&gt;&lt;!-- #content --&gt;
		&lt;?php get_sidebar(); ?&gt;
	&lt;/div&gt;&lt;!-- #container --&gt;
&lt;?php get_footer(); ?&gt;</pre><p
style="vertical-align: top;">Click on 'Update File' to save your changes to customfbpage.php then click on 'Pages' over on the left to list all of the pages including your Facebook app page. Click the 'Quick Edit' option for the FB app page and make sure it looks similar to this:</p><p
style="vertical-align: top;"><img
class="aligncenter size-medium wp-image-450" title="Quick Edit for FB app page" src="http://www.pyehouse.com/wp-content/uploads/2011/11/fbapp-3-300x82.png" alt="" width="300" height="82" />There are several key points here. First, make sure you pay attention to the 'slug' field. If you told Facebook to look for your Facebook app content at https://www.joeswebsite.com/fbpage/, then your slug should likely be 'fbpage' because that is where WordPress will display that page's content. Next, make sure the 'Template' is set to the 'Facebook Page' template which you just saved. Of course, the name will be different if you opted for a different template name. Finally, you probably don't want to allow comments. Maybe you do. I didn't, so I have that turned off. Once you are happy with your settings, click 'Update'. Now go back to the 'Appearance-&gt;Editor' panel and click on customfbpage.php again. Time to get nitty-gritty!</p><p
style="vertical-align: top;">First, I'll just say that for my case, using a NotesIL based theme, my choices were simple. I removed the lines in the template which contained the following:</p><ul><li>the_title()</li><li>wp_link_pages()</li><li>edit_post_link()</li><li>comments_template()</li><li>get_sidebar()</li><li>get_footer()</li></ul><p
style="vertical-align: top;">The title line wasn't necessary because the embedded content was going to be embedded within a Facebook page, so what was the point in including space to say "By the way, this content is for a Facebook page"? The wp_link_pages() line would have shown links to other pages which I didn't want to do. The edit_post_link() line would, if I were logged in and an admin, have displayed an 'Edit' link allowing me to start editing the content. It wouldn't have been visible to other users, but I would have seen it and I didn't want to, so I removed it. I can still edit the page by going through the 'Pages' section in the dashboard. The comments_template() shows any attached comments, but I have comments disabled, so that got removed. get_sidebar() and get_footer() show the sidebar and footer respectively, both things I wanted gone to save space. What you have in your page.php is going to determine what you need to remove from your customfbpage.php file.</p><p
style="vertical-align: top;">But that wasn't it. I still needed to do some CSS customization. I also edited the style.css for my child theme and added the following:</p><pre>.page-template-customfbpage-php div#header h1 {
width:520px;
}
.page-template-customfbpage-php div#blog-description {
width:520px;
}
.page-template-customfbpage-php div#container {
width:520px;
margin:0; padding:0; border:0;
}
.page-template-customfbpage-php div#content {
width:520px;
margin:0; padding:0; border:0;
}</pre><p>This sets pertinent content blocks to a 520 pixel width with no margins, padding or border, something we need in order to make our FB page look alright. Once I had this in place, I was able to load my Facebook page up and load the tab and my content looked right as rain.</p><p>Now, there are some other pitfalls. One example is a link I included in the content of the FB page to our contact page. This caused the contact page to load in the embedded iframe, with all of the default look and nasty horizontal scrolling. To fix this, I altered the link to have a target of _top, which caused the link to load into the page as a whole, not just the iframe. So keep in mind that what your content is loading into is an iframe and be cognizant of  all that entails.</p><p>I hope you find this helpful. Let me know in the comments below or drop me a line by email.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2011/11/06/facebook-page-tab-and-wordpress/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Facebook Page Tab, SSL and Hosted Websites</title><link>http://www.pyehouse.com/2011/11/04/facebook-page-tab-ssl-and-hosted-websites/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=facebook-page-tab-ssl-and-hosted-websites</link> <comments>http://www.pyehouse.com/2011/11/04/facebook-page-tab-ssl-and-hosted-websites/#comments</comments> <pubDate>Fri, 04 Nov 2011 20:33:22 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[development]]></category> <category><![CDATA[error]]></category> <category><![CDATA[facebook]]></category> <category><![CDATA[facebook page]]></category> <category><![CDATA[iframe]]></category> <category><![CDATA[ssl]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=441</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2011/11/04/facebook-page-tab-ssl-and-hosted-websites/">Facebook Page Tab, SSL and Hosted Websites</a></p><p>Here's the setup. My company, PNG Support, has a Facebook page and we wanted to be able to set up custom content there rather than just rely on using the wall to post links back to the main site. If you are unfamiliar with how to do this, there is an excellent write up here [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2011/11/04/facebook-page-tab-ssl-and-hosted-websites/">Facebook Page Tab, SSL and Hosted Websites</a></p><p>Here's the setup. <a
title="PNG Support Facebook Page" href="https://www.facebook.com/pages/Phoenix-Networking-Group-Houston/113056385415130" target="_blank">My company, PNG Support, has a Facebook page</a> and we wanted to be able to set up custom content there rather than just rely on using the wall to post links back to the main site. If you are unfamiliar with how to do this, there is an <a
title="Add an iFrame Application to your Facebook Page" href="http://www.hyperarts.com/blog/tutorial-add-an-iframe-application-to-your-facebook-fan-page-fall-2012/" target="_blank">excellent write up here on setting up an iFrame Application on your Facebook Page</a>. While that page provides some nifty details, for the purposes of our discussion here I will point out that it involves the following:</p><ul><li>Have a website hosted somewhere</li><li>Make sure it has SSL enabled</li><li>Tell Facebook the URL to create the Facebook application</li><li>Link the application to your Facebook Page</li></ul><p>What happens is that when someone visits your Facebook Page, specifically the tab you created for the custom content, Facebook sees it is an app and embeds an iframe linked to your secure (https) URL. At that point, the behavior is entirely determined by the client's browser. And that is where things can fall down if you are using the default SSL certificate that likely came with your hosted website.</p><p>If you are unfamiliar with SSL or https or secure webpages, think of it as a means of determining trust. When you visit a secure webpage, an SSL certificate is given to your browser. Like an actual certificate, it states who you are (e.g. PNG Support or Lynn Pye or Barack Obama or...) but it also states what domain the certificate was issued for. In other words, it not only says who you are supposed to be, but where the content is supposed to be coming from. In addition, these certificates have an expiration date. So the browser checks to see if the certificate is expired or is coming from a website which it is not issued for and alerts you to this. What does that mean? Suppose I get a certificate issued for www.pyehouse.com but I install it on www.pngsupport.com. When you visit www.pngsupport.com, your browser can, and should, complain bitterly that the certificate is not valid because of the domain mismatch. In most cases you are given the option of continuing anyway.</p><p>This can also come into play on the bulk hosted services. These services have multiple servers with each server configured to host many websites, sometimes several hundred or more. If the hosting provider offers SSL as a default freebie, it means they have a certificate for their server to provide basic SSL encryption when someone uses the https handler for your website. You see, that's the other part to SSL. Once the certificate is accepted, the browser can have an encrypted conversation with the server, making it far more difficult for someone to snoop on what you are browsing for.</p><p>In the case of my company, we use <a
title="ICDSoft" href="http://www.icdsoft.com" target="_blank">ICDSoft</a> for our hosting provider, whom I highly recommend. In our particular case, we happen to be hosted on server261. This means that if you visit <a
title="PNG Support (Secure Link)" href="https://www.pngsupport.com" target="_blank">https://www.pngsupport.com</a> (note the https) you will get a certificate for server261.com, your browser will gripe, you will likely be given the option of proceeding anyway and, if you do, you will see the site as it normally looks. That's because the certificate is issued for server261.com but you visited pngsupport.com.</p><p>Now what does this have to do with Facebook Pages and custom iframe apps? Well, for security reasons Facebook requires you to use https links. Like I said, it embeds your link in an iframe on the page. So if the security doesn't match up, your audience is going to get some nasty security warning embedded in your Facebook page instead of the luscious layout you perfected last night. At this point, you'd be tempted to start investigating purchasing options for your SSL certificate. I know I did. And when I started looking at the price tag (over $100/yr for the cheaper options), I realized I didn't like that option. Then I had a thought. The certificate covers anything hosted on server261.com. Was there a way to use the server261.com domain to reach our content and therefore get a certificate match and have everything play nice.</p><p>As it turns out, there is, at least with ICDSoft. Keep in mind this may not always work if the server is not configured for this. But for ICDSoft, if you have, for example, the pngsupport.com domain hosted on their server261.com server, you can reach your content at http://pngsupport.server261.com. Even better, you can get an encrypted link with https://pngsupport.server261.com with zero complaints from your browser. So then I went into the Facebook application's settings and replaced www.pngsupport.com with pngsupport.server261.com and everything worked flawlessly. The certificate was matching, the content was coming up as desired and all was right with the world.</p><p>Of course, then I decided I wanted to link to a WordPress page instead of a hand written bit of PHP. More on that another time.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2011/11/04/facebook-page-tab-ssl-and-hosted-websites/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>SEO Marketing &#8211; Read the Label</title><link>http://www.pyehouse.com/2011/11/04/seo-marketing-read-the-label/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=seo-marketing-read-the-label</link> <comments>http://www.pyehouse.com/2011/11/04/seo-marketing-read-the-label/#comments</comments> <pubDate>Fri, 04 Nov 2011 13:44:05 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[tech]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=437</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2011/11/04/seo-marketing-read-the-label/">SEO Marketing &#8211; Read the Label</a></p><p>My company has only recently started to pay attention to SEO and online marketing in general. Given that we are an IT based firm (albeit small) and have been in business for going on 10 years, that ought to be a shock. It is to me. I think it's because it wasn't until recently that [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2011/11/04/seo-marketing-read-the-label/">SEO Marketing &#8211; Read the Label</a></p><p>My company has only recently started to pay attention to SEO and online marketing in general. Given that we are an IT based firm (albeit small) and have been in business for going on 10 years, that ought to be a shock. It is to me. I think it's because it wasn't until recently that advertising was really given the importance that it is due. Regardless, as a result of our efforts our site is slowly moving up the search results for what we do. I want to point out that this progression is slow and that is expected, almost intentional. I mean sure, if we could see our site shoot up to #1 on Google and Bing through some legitimate means, I'm all for it. But the fact is there is no legitimate means to do that. And anyone who tells you otherwise is selling snake oil.</p><p>When we started working on promoting our site, one of the things we did was submit our business information to various local search engines. These indices are usually free to add your business information, allow you a little bit of extra free advertising and just generally help get your name out there. Like many things in presence building, it's free and doesn't hurt and ultimately it all adds up. Anyway, while we were hitting these sites, we also ended up hitting the radar of the advertising staff of a local major newspaper. We received a call probably two months after we had been revving up our presence building strategy and so had already been developing a plan for organic growth and seeing it to execution. Therefore, when the advertiser called they had their work cut out for them. What, after all, could they offer us that we weren't already tackling?</p><p>Now, if I am already telling you this, then why even write the post? Well, like any sales job, the pitch prettied up what they offered. Phrases like "you'll have the power of our 17 million pageviews" were used. To the layman, it might seem like you'd be getting a hell of a lot of a traffic. What local business wouldn't want 17 million pageviews, all of them local? Sign me up! But of course, that wasn't the point. What they were selling were basically a handful of links to your website, hosted on what amounts to a very deep page on their own site. There were a few additional things on offer including some print advertising and a Facebook fan page tab which they would administer on your behalf, but nothing really earth shattering. In essence, they were providing a metered number of backlinks to the website. Granted, those 17 million pageviews they get make their site very authoritative, so when they link to you, it helps. But then too, those links are deep within their site and the search engines know this. It can help the organic growth of your site (i.e. move you closer to the #1 spot for a plain old search as opposed to paid advertising and the like), but it's not going to make your site go gangbusters.</p><p>And that's the point. When I specifically brought this up, to his credit the salesperson said that absolutely, they were simply increasing the weight of the site. They were not able to promise a specific number of new hits or calls or jobs. Naturally, it was what they want you to be thinking when you sign the contract. But there is no silver bullet. There is no magical slingshot to vault you to the top of the search results. It is a slow process. And it's all about building trust. Just like it takes time for a person to come to trust you, so to does it take time for search engines and the web in general to trust that you are authoritative on the subjects you write about. Just keep providing meaningful content, avoid the obvious errors and make an effort to let people know you exist. Eventually they will come. <a
title="SEO for Non-dicks - Matt Legend Gemmell" href="http://mattgemmell.com/2011/09/20/seo-for-non-dicks/" target="_blank">Or in the words of Matt Gemmell, "Good SEO is a by-product of not being a dick."</a></p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2011/11/04/seo-marketing-read-the-label/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Occupying the Occupation</title><link>http://www.pyehouse.com/2011/10/27/occupying-the-occupation/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=occupying-the-occupation</link> <comments>http://www.pyehouse.com/2011/10/27/occupying-the-occupation/#comments</comments> <pubDate>Thu, 27 Oct 2011 14:35:02 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[personal]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=433</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2011/10/27/occupying-the-occupation/">Occupying the Occupation</a></p><p>I've been reading the Occupy Wall Street movement for awhile now. I'm sure many have. I'm interested for several reasons; I believe there is an inequity though I don't know that I've managed to put my finger on the precise nature of it, there is potential for a great deal of change which may be [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2011/10/27/occupying-the-occupation/">Occupying the Occupation</a></p><p>I've been reading the Occupy Wall Street movement for awhile now. I'm sure many have. I'm interested for several reasons; I believe there is an inequity though I don't know that I've managed to put my finger on the precise nature of it, there is potential for a great deal of change which may be good or bad, plus change is just exciting. One common complaint is that there is no single message other than expressions of fiscal inequity among the occupiers and that there is no one single voice to represent this growing movement. I believe that if the movement goes on for very much longer, someone is going to make an attempt to scoop up these people and try to wield them like a big heavy club. I only hope that when that happens that person is the right person doing the right thing.</p><p>The first observation I had about all of this was that I hadn't noticed it at first. Here was this group of people protesting, making a lot of noise in one of the most populous and newsworthy cities on the planet, in my own country, and there was virtually no news coverage of it. I have watched as it gained more traction among blogs and indie news sites but still heard nothing coming from the standard media outlets. Then when that coverage did come, there was a definite bias against the occupiers with very little by way of attempts to glean what it was they were there to protest.</p><p>Now as I hear news reports come in, many times the protests and the reactions to same are peaceful. Sometimes they are not. Perhaps there is bias because of the news sources I had to rely on early on but it seems to me that the police reaction has been over the top in a handful of cases. Unacceptably so. There is fear everywhere. Protesters who fear for their livelihood which has driven them to protest, and who fear for their lives because they don't know what the official response will be. Police who fear that riots will ensue. Politicians and powerbrokers who see this emotion and power, chaotic and untamed but present, and fear that they will not be able to combat it or control it.</p><p>Emotions are running high and as interactions escalate into more violence, as fears are realized, more will be drawn into this movement. An opportunity will be made visible. Someone will step forward who seems to "get it". Who knows how to talk, how to charm, how to cajole the crowd. They will become the leader, not because they were elected but because the protesters will see them as someone who represents them well, who can be the front man or woman to present their needs to the powers that be. To get things done. And things will get done. There is a power here, deep, hidden but there. It's possible it will disperse, though that will still leave the undercurrent of frustration and anger and fear to latch onto. It is also possible it will be harnessed. They say nature abhors a vacuum. And historically we see that this sort of movement, this sort of power, rarely goes unclaimed for very long. I only hope that we don't regret who takes the reins.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2011/10/27/occupying-the-occupation/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Yahoo and Apple, A Study In Contrasts</title><link>http://www.pyehouse.com/2011/10/19/yahoo-and-apple-a-study-in-contrasts/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=yahoo-and-apple-a-study-in-contrasts</link> <comments>http://www.pyehouse.com/2011/10/19/yahoo-and-apple-a-study-in-contrasts/#comments</comments> <pubDate>Wed, 19 Oct 2011 13:38:29 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[tech]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=429</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2011/10/19/yahoo-and-apple-a-study-in-contrasts/">Yahoo and Apple, A Study In Contrasts</a></p><p>I'm not going to discuss differences between how the companies have been run, the dramatically different arcs each has taken in recent years, or the products each has gotten into. I am instead going to talk about something many might find a bit odd on my blog. I'm going to talk about stock prices. More [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2011/10/19/yahoo-and-apple-a-study-in-contrasts/">Yahoo and Apple, A Study In Contrasts</a></p><p>I'm not going to discuss differences between how the companies have been run, the dramatically different arcs each has taken in recent years, or the products each has gotten into. I am instead going to talk about something many might find a bit odd on my blog. I'm going to talk about stock prices. More specifically, stock valuations in relation to quarterly earnings reports. Large companies typically provide "guidance" on quarterly revenues. This represents their estimate on what revenue will be in a subsequent quarter. It is supposed to be used to gauge the possible performance of the company for investors. Wall Street analysts, however, typically offer their own guidance. So depending on who you listen to and how different the analyst expectations are from the business' expectations, investors may have quite a different reaction to results.</p><h3>Rewarding Success With Disdain</h3><p>By any measure, <a
title="Apple's Q4 2011 Results" href="http://techcrunch.com/2011/10/18/apple-q4-2011-earnings/" target="_blank">Apple's Q4 2011 results are spectacular</a>. They posted their second best quarter ever at $28.27 billion in revenue, which was second only to the quarter immediately prior which clocked in at $28.57 billion. This in spite of the fact that this past quarter would have included the lull leading up to the release of the iPhone 4S, a period of time where users considering a new device typically hold off until the latest gadget is out and available. Apple also mentioned this was their first $100+ billion fiscal year in terms of revenue. In fact, so sure is Apple that they're doing well, <a
title="Apple's Guidance On Q1 2012" href="http://techcrunch.com/2011/10/18/apples-insanely-great-q1-2012/" target="_blank">they have indicated they expect to have $30 billion in the next quarter</a>, which would include the holiday season. You would expect, therefore, that this sort of performance, something any company would be absolutely pleased by, would warrant an increase in stock price, wouldn't you? Not so fast. Apple typically sandbags their estimates, indicating lower revenue guidance on a quarterly basis and always exceeding the mark. This time around Wall Street apparently took this into account and pushed their expectations higher than Apple's. Apple's guidance had been $25 billion. Wall Street expected $29 billion. The final total of $28.27 billion was well over the Apple numbers but didn't quite reach Wall Street's much loftier mark. The result? Apple was trading 6% lower in after hours trading last night.</p><p>So let's recap. Apple says they expect to make $25 billion. Wall Street figures they are wrong and expects $29 which is technically higher than any quarter in the company's history. Apple almost makes the mark but misses, coming in at $28.27 and posting the second best quarterly results in the company's history, but still exceeding their own guidance. Wall Street responds to this sort of success by trading at reduced prices.</p><h3>Rewarding Failure With Interest</h3><p>Now let's consider Yahoo. <a
title="Yahoo Quarterly Results" href="http://www.guardian.co.uk/technology/2011/oct/18/yahoo-profits-down-shares-up" target="_blank">Yahoo also posted their results yesterday</a>. Their earnings fell 26%. Their ad business is in decline. They have had a turbulent time at the executive level, with questionable leadership moves. Their search share is diminishing. I've written on <a
title="What Went Wrong At Yahoo?" href="http://www.pyehouse.com/2011/09/07/what-went-wrong-at-yahoo/" target="_blank">Yahoo's decline</a> and <a
title="AOL Yahoo Merger, Doing It Wrong Online" href="http://www.pyehouse.com/2011/09/12/aol-yahoo-merger-doing-it-wrong-online/" target="_blank">missteps</a> on multiple occasions. Analyst predictions, however, were lower than the announced results. You would expect that perhaps with Yahoo not doing so well, in spite of what the analysts predicted, the share price might still be on the decline. (I think you know where this is going) Nope. Yahoo traded up in after hours activity.</p><p>I imagine that analysts would say they are doing the public a service by trying to see through the manipulation that companies attempt by announcing estimates that are too high or too low in an attempt to alter public perception. The problem is that the analysts have almost as much to gain by altering what people expect. What's worse is that you end up with real results which are ignored in favor of propped up numbers which have no bearing on what is actually happening.</p><p>What about the future of Yahoo visible to the trading public warrants an increase in stock price, especially based on the numbers they released? What about the future of Apple visible to the trading public warrants a decrease? The answer to both is "nothing".</p><p>I suppose I should be thankful though. As should anyone who believes Apple is a strong healthy company with plenty to look forward to. It seems like Wall Street salivates over the notion of Apple falling on their faces. The more that view becomes pervasive, the more buying opportunities become available to those who see the numbers for what they are.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2011/10/19/yahoo-and-apple-a-study-in-contrasts/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Java Resurgent: Not So Much</title><link>http://www.pyehouse.com/2011/10/17/java-resurgent-not-so-much/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=java-resurgent-not-so-much</link> <comments>http://www.pyehouse.com/2011/10/17/java-resurgent-not-so-much/#comments</comments> <pubDate>Mon, 17 Oct 2011 16:29:12 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[tech]]></category> <category><![CDATA[c++]]></category> <category><![CDATA[java]]></category> <category><![CDATA[ruby]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=420</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2011/10/17/java-resurgent-not-so-much/">Java Resurgent: Not So Much</a></p><p>In Pursuit of the One True Programming Language  Cringely had an interesting take on Java. I must confess, I love Java, warts and all. And while it has been awhile since I really got involved with Java development, I've watched from afar and seen that more of its issues are being worked out. I think [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2011/10/17/java-resurgent-not-so-much/">Java Resurgent: Not So Much</a></p><h3>In Pursuit of the One True Programming Language</h3><p><img
class="alignleft size-full wp-image-424" style="margin: 8px;" title="Java" src="http://www.pyehouse.com/wp-content/uploads/2011/10/java-225x300.jpg" alt="Java logo" width="158" height="210" /> <a
title="The Second Coming of Java" href="http://www.cringely.com/2011/10/the-second-coming-of-java/" target="_blank">Cringely had an interesting take on Java</a>. I must confess, I love Java, warts and all. And while it has been awhile since I really got involved with Java development, I've watched from afar and seen that more of its issues are being worked out. I think the thing that drew me to it in the first place was the potential of 'write once, run anywhere'. I say potential because it was never really a reality. Java is still solid on the enterprise server but then that was never really the issue. 'Write once, run anywhere' was supposed to be the promise for client developers to be able to create an app that was truly cross platform. And it works to a point, but still there are problems.</p><p>In any event, Cringely clarifies his position that it's the JVM and its potential resurgence that he is considering. i.e. having a single platform which provides solid performance and good flexibility across platforms so that you can target that and call it a day. Moreover he ties that performance in with the promulgation of SSD over HDD and the fact that the bottleneck will cease to be database seek times due to hardware inefficiency and simple runtime inefficiency due to platform. His comparisons are mostly to Ruby but apply to any interpreted language. He notes that the JVM provided threading and memory management at a time when it was mostly done with greater difficulty with existing tools (e.g. C++) at the time.</p><p>C++ has been getting more of these features, whether through <a
title="List of C++ multi-threading libraries" href="http://en.wikipedia.org/wiki/List_of_C%2B%2B_multi-threading_libraries" target="_blank">add-on libraries</a> or through <a
title="Biggest Changes in C++ 11" href="http://www.softwarequalityconnection.com/2011/06/the-biggest-changes-in-c11-and-why-you-should-care/" target="_blank">language updates</a>. It is supported on almost any platform you care to mention. What C++ lacks is the enforced standardization of things like data types (which are still in some cases hardware implementation dependent for C++ but have set size definitions in Java) and UI frameworks. There are C++ frameworks which are cross platform capable and allow for a single application to be built for any supported environment but as with Java they must target the lowest common denominator in terms of functionality, often lag behind native enhancements and still do not typically look quite like they "belong" since there is usually a noticeable difference from native apps.</p><p>The point here is that C++ is not far behind Java in terms of offering many of the comforts which the JVM provides. Note I say the JVM. It is the JVM and the backing libraries which provide all of the functionality. The Java language is just a front end. JRuby is an example of being able to target the JVM with a language other than Java. Which still ties in with Cringely's point. But here is where I differ.</p><p>I don't think the JVM will see a resurgence, as much as I might like it. The biggest point Cringely seems to be making is that as more emphasis is put on CPU performance because disk performance improves enough to make seek times negligible, the JVM will see more projects in lieu of things like RoR and CakePHP. I disagree though. Right now the JVM is already available for those projects for whom performance is so key that it is needed. Right now, database performance is a common factor among all web server implementations. Put another way, optimizations for database access affect all implementations roughly equally. So again, any optimization happening now is still going to determine your deployment language. That won't change with database performance increasing. If anything, it might even make those scripted languages more useful because you've already cut some of the performance bottlenecks and you can afford a little more slack on the logic performance.</p><p>Additionally, as C++ evolves, it seems to be closing the gap in the number of toys you enjoy with Java. So the ease of development is decreasingly an issue. Which means you can get your performance gains, with possibly more deployment options, and equal development ease, by switching to C++ in lieu of Java. Not now perhaps but in the timeframe Cringely is considering for JVM uptake.</p><p>And while OS X is still not a majority market share, it's numbers are increasing. And Java is in a somewhat nebulous state at the moment. Apple has deprecated their JVM. Java apps are not allowed in the Mac App Store nor on iOS. Oracle has announced Java 7 but has not announced a timetable for availability on OS X. That's a big hole.</p><p>All in all, I would love to see Java make a comeback and be more widespread than ever. I truly enjoy developing with it. I just don't see it in the cards.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2011/10/17/java-resurgent-not-so-much/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Silver Linings</title><link>http://www.pyehouse.com/2011/10/14/silver-linings/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=silver-linings</link> <comments>http://www.pyehouse.com/2011/10/14/silver-linings/#comments</comments> <pubDate>Fri, 14 Oct 2011 21:13:40 +0000</pubDate> <dc:creator>Lynn Pye</dc:creator> <category><![CDATA[personal]]></category> <guid
isPermaLink="false">http://www.pyehouse.com/?p=410</guid> <description><![CDATA[<p><a
href="http://www.pyehouse.com/2011/10/14/silver-linings/">Silver Linings</a></p><p>I have been hard pressed to focus on the blog of late. My 9 year old daughter plays soccer and several days ago, during practice, was on the receiving end of a kicked soccer ball. Unfortunately the ball was kicked by one of the dads and from about 10 feet in front of her. She [...]</p>]]></description> <content:encoded><![CDATA[<p><a
href="http://www.pyehouse.com/2011/10/14/silver-linings/">Silver Linings</a></p><p>I have been hard pressed to focus on the blog of late. My 9 year old daughter plays soccer and several days ago, during practice, was on the receiving end of a kicked soccer ball. Unfortunately the ball was kicked by one of the dads and from about 10 feet in front of her. She did not lose consciousness but was knocked to her back. He apologized and she got up on her own, which is likely why my initial reaction wasn't more visceral. She has, however, been diagnosed as having a grade 1 concussion, the symptom in her case being a lingering headache that has persisted the entire week. She is getting better and the CT scan today revealed no subdural bleeding, so I think it's only a matter of time before she gets better.</p><p>I don't think I need to say this, but there is no reason to kick the ball hard when playing with 9 year olds. There is nothing they learn from a projectile moving more quickly than they are likely able to react to in response. You prove nothing more than that you are a grown up acting very irresponsibly around other people's children as well as your own. I don't think I need to say this, but then I wouldn't have thought I needed to say it before, either.</p> ]]></content:encoded> <wfw:commentRss>http://www.pyehouse.com/2011/10/14/silver-linings/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
