Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
Get HideMyAss! VPN, PC Mag's Top 10 VPNs of 2016 for 55% off for a Limited Time ×

Comment Never - But Because Your Definition of Unnecessa.. (Score 3, Interesting) 239

If you believe that code will help someone with understanding (yourself included) then it is necessary. It is needed to help with clarity. It may not be strictly required for the correctness of your program, but your goal should not be to express the correct solution as succinctly as possible. That approach leads to many other problems.

Occasionally I include solutions for problems which have not yet been uncovered. Those methods may not be called (dead code) and any kind of static analysis would report them as "unnecessary." If I make the decision that such code will help me, or help someone else, later then I believe it is totally necessary, and good to include. Worse-case is that it will be a good starting point for someone later, and they will throw it away and replace it with something better.

Never include unnecessary code. If there are incorrect implementations that you are replacing, remove the incorrect ones! Don't leave traps lying around for people to get caught in. Unexecuted code, or not succinct code, is not unnecessary. I constantly include semicolons, and brackets around one-line conditionals - those are defensive practices which are designed to prevent future problems, and aid in clarity.

This is why people are hiring you - to apply human intelligence and judgement to a problem. There are situations where doing not strictly necessary things is appropriate, and situations when doing not strictly necessary things is a waste of time. It's up to you to decide. Different actions are necessary for different metrics. One thing may be necessary for a correct solution, and another thing may be necessary to help someone else understand your correct solution. Everything should be useful (necessary?) under some kind of metric.

Comment Maintenance vs New Creation (Score 1) 331

How often is it that you have a brand new system, in which you get to choose your language? Unless you are independently wealthy, or part of a funded started (indirectly independently wealthy, partially) the answer is probably not very often. Whenever someone has a brand new, completely open, technological problem, they have a green field.

This is not very common, at least for me. I have a BS + MS in computer science, worked for three years as an employee in two companies, and now own my own small software company (with two guys I pay to write code for me) and have been in business for myself for four years. I charge enough money to pay my people, and my bills, through revenue. That means, by definition, that my customers have to be able to pay. I live in a poor state, without a tidal wave of venture capital. Almost everyone here has a legacy system, which is generating them money, which they can use to pay us. Those systems come with constraints.

There have been three times in my 10+ years of experience creating software during which I was able to 100% choose everything technology related for a project. Once was part of a barely funded start up. The other was part of a successful business that contracted with my company to greatly expand their eCommerce, completely scrapping their existing system and letting me choose everything. The third is ongoing - a customer described their problem in a high level, and nothing existed to solve it. For the third example, I am bound by (light) constraints regarding the other system we are interfacing with, and it has to be web-based. Otherwise, my more than full time experience, has been as a maintenance programmer, or as a manager over a team of maintenance programmers. This guy is way more eloquent than I am about the subject, and way smarter + more successful. Think about what the very successful people have to say about these kind of things.

I think different people, in different states, have different approaches. The most poorly organized organizations, and ventures, had very few constraints. They didn't have to answer to anyone about their technological choices, and typically had money to "build something." Sometimes that results in beautiful leaps forward, for humanity as a whole. I think most of the time it doesn't. Maintenance programming means you are maintaining something useful, for someone that is interested in paying you. You'll also learn new skills, and new languages / technologies / tools, just out of necessity, rather than being freely chosen, with no constraints.

Comment Auction (Score 1) 214

The authorities don't really want to "solve" this problem. There are many solutions for managing bots, such as CAPTCHAs and order limits.

One real solution is to auction off every ticket. The auction would begin as early as possible, and continue until the event begins. As soon as a ticket is bid for (requiring an escrow) the auction for that ticket would continue for another hour. If, at the end of that hour, no one else has bid, it goes to the last bidder. If someone else has bid, then it goes to them. They wouldn't have to wait for the entire hour to be up - they could place another bid immediately after the previous bid was placed. If the payment were not received / the escrow failed, then auction the ticket again.

I think you would see how tickets are actually valued by people that plan ahead if such a system were implemented. Scalpers aren't a problem in this system - they seem like a you-failed-to-plan-accordingly surcharge.

The problem is a timing disconnect between how the tickets are valued. This presents an opportunity for arbitrage, which scalpers capitalize on. The difference in timing, and relative values, presents opportunities, not a reason to throw someone in jail. It also presents an opportunity by which the ticket venues could actually try and understand these differences in timing, and increase their profits.

However, it's much easier to sell all your tickets, at like MAYBE 5 different prices, to one scalper than to actually think about novel distribution channels.

Comment Re:Mobile Responsive Page = Fine (Score 1) 278

ServiceWorker - May 9, 2016, 5:04:48 AM - This is an experimental technology. Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers.

Yes, if you want/need to use experimental, new, HTML5 specifications that are not supported across different browsers, then I am going to agree that an app is not your best choice... However, I wouldn't say that that makes it an older version since it does not implement the standard. My above statement was not meant to be an if, and only if definition. I would say that for this case, it is an experimental standard which has not been implemented yet.

Again, my point is that is makes sense to actually look at these different requirements, your budget, and make an intelligent determination based on the requirements and the resources you have to bear. It does not make sense to say "let's do an app, since an app can do everything" unless you have an unlimited budget and you have the goal of writing an app, for the purpose of writing an app.

Comment Re:Mobile Responsive Page = Fine (Score 1) 278

If you need to support something, on an older version of a phone which does not implement the HTML5 standard, and you have a budget to do so, then yes, an app makes sense. Just like if you need to access arbitrary hardware, an app makes sense.

My point is that as the HTML5 standards become more widely adopted, and feature-rich, the need for the cases you described becomes smaller and smaller. That is the entire point behind putting this functionality into the browser in the first place.

Comment Re:Mobile Responsive Page = Fine (Score 3, Informative) 278

There's something called a media query, which allows you to style your site differently based on the screen resolution. This concept is how sites are (easily) responsive to different size screens. Additionally, developers SHOULD check to see if the browser + hardware supports the call being made, before calling it. For GPS, that would be to use the GPS coordinates, only if GPS exists. Otherwise, make them fill out a form.

That would be a well designed, responsive, website. There is no technical reason that would be impossible. It would be cheaper to build that than to build a website, and an Android app, and an iOS app.

Comment Re:Mobile Responsive Page = Fine (Score 1) 278

That is a good example, up to a certain point. Eventually, you'll get clogged up with tons of apps you want to install for convenience, exactly the same way that browser shortcuts eventually need to be organized.

Will that mobile page not pull GPS? GPS is supported in HTML5. If it does, you could pin that to your home screen (using Chrome, with a shortcut) to accomplish the same thing. If you don't want to have their app installed...

I still see your point though. Pinning a URL might be more complicated than installing an app.

Comment Mobile Responsive Page = Fine (Score 3, Insightful) 278

This xkcd states it pretty well.

I own a software company. Every week someone talks with me about the app they want built. Almost always, they do not actually need any functionality that is missing from HTML5. Very occasionally they do (such as these guys.)

Why would anyone install an app which does not offer anything above the web site? They wouldn't. Clients pay tremendous amounts of money to build apps, which have not been designed, tested, or thought about in any kind of a meaningful way. Even when those clients have money, most of the time I stay away, since being a part of something dumb isn't that great (even if you're getting paid.) Or I try and help them think about it, and then build them a webpage, if they have money.

Comment Re:Custom Waze Faker (Score 1) 767

I'm not sure you'd actually have to fake this at the GPS device level. Waze is reporting data via API calls, so as long as you could put a bump in the wire, and record the data that comes out, and deduce/reverse engineer their API protocol, you could write a bogus Waze client that submits whatever data you want. You wouldn't even have to run this as a mobile app if you didn't want to. Likely, you'd need an IP address that is somewhat geographically related to the area you're reporting on (I'd check that if I were Waze) but a Waze spoofing website, where the client is AJAXing up the data would likely work. You could even have a cool little draw the fake route tool!

This would be a super fun project. I think you'd have to look into adding a certain amount of randomness to your GPS data to make it look realistic. Sort of like Bayesian poisoning...?

Comment Custom Waze Faker (Score 1) 767

I own a custom software development company, with a MS in CS, and a great deal of familiarity with graph theory. If anyone wants to build a Waze faker, send me a message. Faking GPS coordinates to look like motion won't be rough. I'd recommend starting on Android, and then moving to iOS.

Comment Re:Low Cost of Living? Not Compared to Albuquerque (Score 1) 151

I have zero problem with drugs or corrupt government.

My rental property business, and my software business, have never been negatively impacted by drugs, or corruption. New Mexico Tax and Rev came after me when I screwed up my 2012 gross receipts tax, since I legitimately made an honest mistake while starting my business, and then I paid them what I (legitimately) owed, and moved forward. Specifically, how did a corrupt government impact you? I am not disagreeing with you, simply stating that the problems you are describing never impacted me, and wondering how they impacted you..?

Yes, there are seriously jacked up crackheads here (don't ride the Central bus!) but other than having my bicycle stolen WHILE I WAS RIDING THE BUS, I have not had any other problems. The same with drugs, and crackheads, how were you impacted? I did have someone mess up a wooden fence to steal a bike, once. I 100% agree on this one (I'm not sure if I agree on corruption) but I have no idea how you were impacted.

I'll likely go to Denver for some business I need to attend to (a previous iOS developer on a project I want to meet with lives there, and I have a current customer based out of Denver) and to visit my cousin, but I have no idea what you actually mean when you say I need to get out more. I visit my friend in Seattle about once a year (he lives at Linden Lab, the builder of Second Life) and my other programmer friend in New York City once a year. I was dating a beautiful woman that liked to travel, so we went to San Diego (beautiful to visit, I'd NEVER want to live there.) So, what do you mean when you say I need to get out more?

What's your name? I think opinions are more valuable when backed with a name. I try not to pay too much attention to anonymous comments, but I am interested in your opinion.

Slashdot Top Deals

Can't open /usr/fortunes. Lid stuck on cookie jar.

Working...