![]() |
I should clarify my last comment for a broader audience: what I mean is that I always focus on how easy it is for the next guy to maintain any code produced, and how easy it is for the next guy to add features to the existing code.
I'm sure a lot of people have heard "fuck, that is awful, we have to rebuild it." Sometimes that's true, and sometimes it's just a lazy or inexperienced developer. I write code to avoid that situation. By using PHP for your project, you expand the availability of qualified and price-effective engineers available to support and extend your product. |
Quote:
|
Quote:
|
javascript scare me
java sun and python create good virus i'm not java :1orglaugh |
https://lh4.googleusercontent.com/-Z...0-h800/job.jpg
just saying.. :1orglaugh |
Quote:
The website works, and every so often the page fails, and then we fix it. Such is life in internet time. |
Quote:
|
I am a programmer. Started way way back programming 8086's in machine language 'cause that's what was around... Even did some web stuff in assembly 'cause that was the fastest way to do it. These days programmers don't seem to feel the need to make stuff run efficiently. They use resources like they're nothing and when something is slow they use more machines... sure, that's a solution, but in my opinion not a very good one. It makes huge monsters of programs with unreadable code and patches upon patches upon patches...
A web programmer needs to know a server-side scripting and a client side one. Of course, you don't need the client side per se, but the power of thousands of computers ran by the visitors can make a site faster than doing all the math on the server. At the same time doing the same calculations over and over again for every single user when you don't have to doesn't make sense. So it's never easy to decide to do something server/client side. I use PHP for the server, and a combination of MySQL ('cause of it's HUGE flexibility and enormous possibilities in queries) and Redis ('cause of it's mere speed, thehun for instance is ran in PHP using Redis as the Database, life from the DB, no other caching. We also run our banner rotation in PHP/Redis, rotation, geo/device targeting, stats, all live, and all in PHP/Redis). On the client site I use a lot of jQuery, which is basically a layer over JavaScript. Very useful if you use it right. I'd rather spend 2 days figuring out how to make a program run faster or how to get a query more effective than to spend any time on a new server. A little example of what strikes me as a programmer these days: sites that server video at 76 times the speed (and higher) of the video... How can someone watch a video at 76 it's original speed? Stuff like that is just stupid to me... People burn resources like they're nothing, and up to a certain point they're right of course, but the real programmers, the codes from the old days that have speed in mind, they're rare these days... people rather play around with WorldPress or whatever, which is great for some things, but not for most... A simple example from this post, can't remember the exact code, but it came down to this: $v=7 $retval=($v==7)?true:false; this is a waste of resources... the ($v==7) already results in a true or false... And this is just a small thing. I used to work on inner-loops of game engines, trying to get rid of for-loops 'cause the 'checking if the counter reached 0 yet' 'caused an extra cache-miss in the CPU... ok, agreed, that was really going very far, but that's probably why we never used more than one machine for thehun... |
Very good post on server resources. Many projects here aren't autoloading, aren't optimizing queries, some don't even have column indexes in their databases! It's .. troubling, at best.
|
lot of good points in this thread.
one point to consider: in my experience, a lot of startups fail precisely _because_ the code is too good - rather than because the code sucks. when you are starting a business, perfectionism kills as much as sloppiness. many techies will disagree, but truth is that business priorities are never aligned with technical priorities. and unless you are in academia or in a basement, when there is a tradeoff between the two, business takes precedence over better code. in an online startup, a key to success is to understand where the ideal balance lies. this requires both business and (at least some) technical skills. if you don't have some of both, and you are the boss, you are usually in trouble. |
If you don't know programming you have to find someone that does. Biggest problem with programmers is that they usually lack any business sense, don't document, dictate what's going on with the software and pretty much make it impossible for anybody to understand what's going on just to make sure they are never kicked out of the loop. That's politics though, I thought this was about the programming side of things :)
|
Quote:
|
Quote:
I object to the highlighted part because you make it sound like we do that on purpose. :1orglaugh |
Quote:
|
Al lot do indeed. I see that with a lot of sites that are beyond startup. Sad really. Comes to proof: if you don't have the technical knowledge make a programmer part owner of the company so at least you're both on the same side. Do make sure you find a programmer that understands programming alone doesn't make anybody money. You need more than just good programming. Marketing, good ideas, stuff like that. 1+1=3 so to say...
|
Quote:
On the other hand, I remember the time when IBM was pushing their standards on every big project, where 80% of the time is spent on design and validation, prior to coding. The fine line right now in webdev is that of getting the project running online, and fixing it as it goes. Kind of like the Yorktown getting fixed at sea while en route from the Battle of the Coral Sea right to the Battle of Midway. |
Quote:
It works though. Although fixing one thing might mean you're breaking something else. That's why I'm all for documenting right, create API's to enable different programmers can work on the same thing and not mess with the lower layers when they don't have to. Data abstraction is a good thing! It might cause some overhead (and I hate wasting resources usually), but there is the law of diminishing returns which means that it's good to have some overhead if that overhead will be made back by maintainability. Well, actually the law describes the opposite where you shouldn't put more effort in something than it makes back, but it comes down to the same thing... |
Usually, you also get what you pay for - i daily have a bunch of requests like "hey, i need this done, how cheap can you do it?", well sometimes it can be done cheap, sometimes it cannot, if you're not prepared to invest in your business and want half way solutions, you will usually do get half way solutions.
Coding takes time and if properly done, takes even more time. For most of coders, they cut on quality or documentation or somewhere in between and hurry up projects just to grab a cheque. Eventually, it's a mix between finding the right coder and the right client. In adult this doesn't happen too often i think. |
Quote:
We should try to keep this thread positive and informative for new people learning. I know that there are probably some new people who just haven't learned everything yet (but still want to make things, and that's good!). But these people probably don't know how to use git, write unit tests, manage dependencies, or write even good OO code. I will agree with Dom, unit testing is amazing and can save a lot of time. You should look into PHPUnit. You can add it as a dependency via Composer. getcomposer.org if you don't have it. Hopefully that helps you to spend more time writing good quality programs and not debugging and trying to find errors! |
Quote:
|
Quote:
|
Quote:
|
Quote:
|
Quote:
A high achiever can probably do things better than most people, but even if you can do something twice as good as somebody else, you have limited time available. Hiring people and proper work division is essential to succeeding. If you want to be a developer, hire someone with a business sense to lead you. If you want to be a leader, don't tell your employees how to code, give them reasonable guidelines and if they are unable to live up to the guidelines then fire them. If you want to be both, which really isn't the best of ideas, don't bury yourself in detail and make sure not to look over your employees shoulders all the time. |
Cool info!
|
Quote:
I've been in this industry for a while now and I've seen programmers and tech people hijack a whole company. And not only in this industry. As many of you know I run a recording studio in the Netherlands. For an English movie I was hired to do the surround post processing, but the guy that did the audio kept some of the dialogs on his laptop so they couldn't go around him... of course he refused to give me the dialog of one actor and I couldn't do the surround mix... Better safe then sorry... |
Some perfectionism in code, which leads to loss of focus on the scope of your business (i.e: to make the most money in shortest time as possible), often is caused by asperger syndrome. People in doubt can take a test here: http://www.rdos.net/eng/Aspie-quiz.php
|
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
|
All times are GMT -7. The time now is 05:15 PM. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
©2000-, AI Media Network Inc123