Issues I have at the moment are: 1) YouTube quota for using their search API is low so if i get lots of people searching for videos and creating competitions it might raise an exception 2) In the mobile view I am having a problem with the "Pull to refresh" section underneath the competition; it gets stuck and it hard to use on mobile. I suck at GUI design and css so that might be the cause for that comments section.
HN user
rosariom
Hey guys,
Just wanted to share my 2 week project with you guys for feedback and hopefully some marketing tips :) Anyone out there having any luck with Android apps? I'm the male actor in the commercial despite my director's best wishes... He tried firing me several times indirectly and directly and I refused to be let go. I figured "I'm a developer, how hard can acting be?" Not so easy :(
Thanks sounds like you have a good plan... Amazing that officials can keep quiet on issues until they vote... I think your approach can at least provide hints and motivate people to call and get direct answers
I also think things like this should be blown up by countries impacted in their media and the UN. This will help highlight dangerous and over-reaching US foreign policy and potentially get US citizens and the UN involved which can then apply pressure on US officials to refrain from these kind of measures.
It is almost twilight-zonish to see the US government in favor of Internet censorship when speeches against it like this exist: http://secretaryclinton.wordpress.com/2011/02/15/secretary-o....
Why isn't the US media all over things like this? So much for being the vanguards of freedom...
Nice holiday hack! Are you planning to keep it up-to-date? I would like to visit it every now and then to track updates along side other sites I have been checking for SOPA related stuff
Good points; we were building an in-house solution for an Investment management wing in a bank.
To give some context on the trade reference I referred to, it was an internal tracking within the STP system used solely for tracking state and for communication between IT and the business. It was a simple date + numeric value used in our STP system for users to use in our Struts web and C# front end to check trade state through the STP flow and communicate with us if issues arose.
We did have lots of interfaces where it made sense and relied highly on object composition to represent financial concepts more richly and for inject-ability via Spring and Unit testing (makes writing tests easier when you mock things out). Asset types, security identifiers, etc, were represented correctly from an OO perspective and were a part of the xsd layer/interface between us and the trading systems. To us these were read-only values we just passed through for STP.
You are right about interfaces and unit testing but this is one case I highlighted of many where I think the lead was going over board. The internal trade reference was the same for 8 years and still the same to this day (which gives it another 3 years since I left for a total of 11 years). It never had more than one concrete class. It is no big deal on its own, but when combined with the other interfaces that only have one concrete class, it just bloats the system for no good reason.
Design and architecture is good for the reasons you have mentioned and more but it can go over board as is the case here IMO. There were other instances of that in our code base but that would take an entire blog post to cover some of the atrocities this engineer created because of his forecasting ability.
This is the experienced developers dilemma: "To engineer or to not engineer"; engineering usually turning out to be over engineering. A more experienced developer friend of mine would always tell me: "build for today's requirements". I try hard to fight the design/architect voices in my head that always want to imagine this made up future where we will need X or else we cannot go live. These voices usually only stall real actual work, instill fear, and serve very little to no purpose.
I once had an argument with a Wall Street Java developer who was made the "lead" of one of our team projects. He decreed that every single class have an interface so that we can be generic and not tightly couple any of the components to concrete classes. I agreed that in some instances where functionality, i.e. methods that can be represented by different classes with the same method signatures made sense but not every single class needs an interface (if that is the case just go with a beautiful dynamically typed language like Python and avoid the code bloat). He got management on his side and we went off and built an overly engineered Straight Through Processing solution. It was a sheer nightmare to debug and the code bloat made me scream one day when we had a serious production issue. Even our manager (who finally had to look at the code when most of us were out on vacation once to answer some user questions) was flabbergasted at the amount of code he had to read through in order to answer the most trivial of questions. One extreme example was an interface for trade references. Our trade references were always strings with a date and some numeric value concatenated to it. The "engineer" decided that we needed an interface for this and added one interface and concrete class for our trade references. I told him that all classes needing trade references instance variables could just have a String instance variable named tradeReference or something like that and he went on to give me a design pattern lecture. We argued for nearly 20 minutes about this silly thing as he kept insisting that the future was unknown so we have to future proof the code from unforeseeable changes. When he said this I asked him to remove the Crystal ball plugin he had in Eclipse for predicting the future and get real. He got angry and we had a team call to waste yet another hour of developer time to discuss this. In the call I mentioned that our trade references scheme had not changed in 8 years and was unlikely to change... I lost the debate anyway. The ratio for most of the code base from interface to concrete class was largely 1-1 thus not justifying this code bloat approach.
Experienced developers (at least I think) seem to have these crystal balls in their heads or IDEs and usually try to be clairvoyant when it comes down to building a product. We need to get out of the business of overly engineering and just do as my friend said: "build for today's requirements". It is called software for a reason: it is soft. It can change (most likely will), can be refactored, redesigned, and/or incrementally made better or more abstract to accommodate changes. I am in no way saying no design, just limit it and get to work. A successfully built product is more satisfying then the imaginations of your head and the "perfect" engineering/scaling solution that never materializes. Users will like you, you will like you, and the team will get an andrenaline boost with each and every release keeping the spirits high. Remove the Crystal ball plugin from your head/IDE and stop trying to be clairvoyant and be a developer.
No one is down playing the role government has played in helping liberty flourish and prosper in certain conditions we just do not want it to be to become to big and threathening to freedom.
I do not think people or Ron Paul are talking about dismantling the federal government just limiting its powers. As the old saying goes, "Power corrupts, absolute power corrupts absolutely". It is extremely dangerous to give power over to a few in central government and not distribute the power evenly to all of its participants as history has shown us. I fear governments that want more power in the name of providing for my welfare and giving me security. I will do most of that on my own no thank you.
Innovation coming from a strong central government? What happened to the Soviet Union's innovation? They had a strong central government and collapsed... almost zero innovation came from them. What about China? Largely a beneficiary of treaties like NAFTA and GATT which gives them a great opportunity to ship in products made with substandard wages or as some would argue, slave labor wages. They also appear to be manipulating their currency and have a copy-and-paste business model. I see little innovation here as well.
I do agree that states and the fed can collaborate on issues of national interest that apply to all parties but I am totally against shredding the constitution or increasing the size of the fed because we are not in 1787. This country got to where it got because of freedom and allowing the people, like hackers, to tinker, fail, experiment, succeed, and do whatever they wanted as long as they did not infringe on the rights of others. SOPA and the NDAA are acts of central government that are appalling. Centralize government did not get us here, free people did.
when I said sanity maybe I should have been more clear: political sanity against tyrannical crap like this: http://en.wikipedia.org/wiki/National_Defense_Authorization_... .. this bill silently passed without any substantial media coverage and grants the president unprecedented powers the kings of old would envy.. I know no politician or anyone for that matter is "perfect" (really no such thing exists) but I like a lot of what he is saying not everything. I would leave it at that to avoid any diatribe that may arise on HN over political discussions.
Maybe this should be a tech-only forum to avoid getting people charged up and polarized.
Ron Paul message resonates with people because he is talking about something none of the other candidates are talking about: returning freedoms and sanity to America. It would be hard to rollback all the damage done by the likes of Obama and his predecessors but I think it can be achieved gradually and with some culture changes in America. This is a great country and I hope to see its freedoms preserved and reinstated otherwise we will head down the road to god knows what and never come back. Freedom begets greatness and innovation.
The media needs to stop its blackout of Paul and the smear campaign and cover the issues he is highlighting which are of the utmost importance.
This is what I was kind of doing for books in Barnes and Noble: check the contents, read a few pages, then buy the e-book or physical book online. With this app it would make it super convenient to compare prices and order instantly after doing such a thing. I would imagine this will extend to clothing and other things, i.e. people will try the clothes and look at stuff in physical stores then order online if there is no rush to have the item. Who would have thought the online world would be such a force to reckon with?
thanks
Will this be recorded and available later to watch? I missed the beginning
Thanks Clint... I love reading posts like these that emphasize that sustained commitment and hardwork pay off and the fact that it also departs from the traditional build-a-redundant-cool-product group think movement. Too many niches are being ignored and unexplored by us tech-wanna-be or already made entrepreneurs because we keep looking at the cool guys in TechCrunch and other tech sites talking solely about tech industries and cool socially appealing products.
So many businesses/niches are in pain because they do not have software solutions or have to use substandard solutions to get the day to day going. Your advice to go work for another industry is solid and I would even go further and say volunteer on a part-time basis just to make the contacts and see where the problems are. If us tech guys did this more, we would uncover an abundant source of opportunity in need of addressing from people willing to pay to have the pain go away! I am currently looking to do this in the construction industry where some of my friends work.
Great post
Thanks Mizza this helps
Thanks man this is an ultra cool subject!
What apps did you build if you do not mind me asking?
I am curious to know how well you are doing with your Android sales as I am looking to release an Android app soon. Is Android as hard to monetize as people say? Did you dual launch your apps on iPhone and Android? Are your apps paid or ad supported or both? How are you marketing your apps? Thanks in advance
what technologies/architecture you guys use behind the scenes to power this site? pretty damn cool site by the way :)
he was a nice person and great professor... I am glad I had the opportunity to take a class with him
How long did you wait until you quit your job? Where did the idea come from? Did you outsource the web design?
Hi,
I think this is a hard one without working on a big project with senior people. I struggled with this for years and still do but have gotten a little better thanks to senior developers guiding me. I think besides reading books and attending lectures or listening in on talks online, I think you need to find a problem sizable enough and build it from scratch. My work with senior guys has shown me that designing on paper and the white board is essential to tackling the problem for understanding and eventually building it. The patterns will reveal themselves as you go through this exercise if any patterns are needed at all, and I think this is something you definitely will not learn overnight but overtime by getting your hands dirty. If you have not visited this site infoq.com, please do so. It has tons of experts speaking on it. I have been able to incorporate some of what I have learned from here to the job. A quick link to how YouTube was built: http://www.youtube.com/watch?v=ZW5_eEKEC28&feature=youtu...
Really good talk with lots of jewels. Another good book for you: http://www.amazon.com/Scalable-Internet-Architectures-Theo-S...
Hope this helps.
Thanks for this link... This should make for a cool extension
I agree this thread rocks with real life stories...
Hi,
I have faced (maybe still facing) the same issue and have started to employee 3 techniques, first two of which Tim Ferris mentioned. 1- Cultivate selective ignorance 2- Batching tasks up 3- Create a schedule
How would this help? HN, Reddit, and the other news and information sites out there are awesome but can become time-thieves if you let them. We come to these sites to see what is the latest and greatest in the news, for inspiration, and also to learn so that we can do things better. The question is: how much information do we need to be adequately informed and how much do we need to learn in order to get to work on something we are passionate about? Not as much as we would think in my opinion. Cultivating selective ignorance is necessary to ward off the feelings of "I need to read more in order to get this thing going", or "I am falling behind, need to catch up with the news". We will never be able to get it all and thus just need to focus and specialize to some extent. Well rounded-ness is great, but in excess it will give you no depth in anything. Do not try to consume all data from all sources; we cannot keep up with the data deluge and will drown in it if we foolishly attempt to do so. Use what you already know, get started and focus on your ideas. If you do not you will just build up all kinds of anxieties and will feel down on yourself for not doing anything. In addition, this data deluge is also overwhelming and you may feel like you are not smart enough or the product will not be good enough for launch. It feels good to even do the simplest of tasks you set out to do and makes you want to do more. I blog about something similar to this here: http://techjobsspace.blogspot.com/2010/11/and-furthermore-my...
Batching and scheduling are awesome concepts to start using immediately. Information addict? I know I am and love to consume much data. My information-rich diet includes all the stuff you guys are reading but what I do slightly differently than some is set dates and times during the week on my phone calendar to read this data. Instead of reading everyday I pick some days of the week to get it all in and limit myself to that. If you have a calendar on your phone or pc or the web, use that to control the addiction. You do not need to deprive yourself completely (unless it is a severe problem) just schedule when it is ok to read. I use this for errands and other things as well. We all need breaks from work to unwind; use this time to catch up with friends and family, errands, and reading. Stick to your schedule and it will all fall into place eventually. Paul Graham definitely does not want this site to be a time-sink.
Hope this helps!
I have to agree both with fakelvis and staunch.
To fakelvis's point, IT in finance could be fantastic if you get into a good area (I believe they are far and few). You will be working on cutting edge stuff and decommissioning legacy apps at every opportunity that presents itself for a re-ramp of the app. At my previous employer, I was lucky to join a team with tons of legacy that worked and was problematic. Mandates came down from management and the business users to rewrite and re-platform the old stuff to accomodate new requirements. We were given the green light to build the new platform in whatever way we saw fit. We were free to choose languages, design, and architecture of our liking to accomplish the task. The new platform was strategic in nature as well and was meant to be put in place for a long time. This was a great experience for me and gave me as a developer, the rare opportunity to work on an app from scratch. My user base was great and very knowledgeable in the finance space so I learned alot as well.
To staunch's point, the finance culture is broken and full of megalomania. Tons of developers and finance people with delusions of grandeur. The one thing I hate about the finance industry is how IT is treated and viewed by some parts of the business. We are viewed as nothing more than a utility. Too often I hear developers talking about 'moving up' and by this they mean leaving this creative craft of software development to be on the 'fun' side, i.e. the business end. This, to say the least, is demoralizing to the people that want to build systems for a living when you constantly have to hear this. Given this reality, I think the life of an developer in finance is short-lived. Burnout rates are high and job satisfaction is low. I have yet to meet developers that are excited about career prospects in finance.
I created a blog that will start talking about this and other things I see here: http://techjobsspace.blogspot.com
Anyway, these are my 2-cents. I am also looking to start something up on the side and get out of this dungeon.