I agree, not sure if you could jury rig it to get an active connection to a PC (potentially it may be booting just the screen is out or loose etc.? I have seen that with other devices before such that it looks like it won't boot). A lot really depends on why it is doing this. If it just flat won't come on at all (100% know that it is never getting there) I don't believe there is a way to wipe the data.
If OP just really wants to, best bet I would say is open it up and try to fix it. Not really losing anything if you have to wipe data before selling it, because otherwise as AmiMoJO put it, only other option is a hammer.
That would be why I posted that caveat... Obviously it isn't a 3.5'' or a 2.5'' platter drive, those are literally bigger than the phones most of the time, but conceptually it is the same principles for OS data storage and access (probably isn't using magnetic platters, but neither do SSDs and you can do the same things to both).
As far as I know, the hardware is no different than a standard platter drive and since most phones can be mounted to and read/written from a normal PC, I really see no reason why you couldn't use a secure rewrite with something like CCleaner or even use killdisk if you want to WIPE the phone. Don't quote me on it, because I've never tried myself on a phone but I would think it is fine.
Most people who say to "destroy" the drive are just being overly cautious. For anything that does multiple overwrites on all drive sectors you should be fine for the most part. Technically yes the only way to guarantee the drive is unreadable is destruction, but for an individual that is normally over the top (says this as I've destroyed a few old drives myself...).
I disagree. I've got the experience now, but the foundation you get from the degree I feel is more valuable. And as I stated, you also pigeon hole yourself into a technology set. You may learn *something* related to the field, but not the specifics to build a general foundation for software development. Some people may vary from that, but that is my opinion and experience.
Based on what I've heard from friends and family too, in their fields and in software development, having the degree makes a huge difference because many companies will leverage the fact that you don't have a degree to drive your salary down. When you have a degree, they have no leg to stand on, especially if it is a general computer science degree. I've heard/seen some people that had something somewhat related to computer science (telecomms engineering and the such) they even used that against them to get their salary lower. When you have a computer science degree, there is very little they can say.
My advice is invest in the education. I had a similar situation when I was in my second year (I had been doing software development as a hobby for about six years by then). A guy came to me who had a small business developing business websites and managing them. He wanted me to come work for him, but it would have turned into a full time job and I likely would have had to cut back on study time. Yes, I would have made a lot more money earlier, but there were several pitfalls I identified and they kept me from doing it.
First, pigeon-holing yourself into a technology set is a bad idea. You may know HTML/CSS/PHP/mySQL, but those technologies have somewhat limited job opportunities. If you have a very strong fundamental understanding of Computer Science (and in spite of the nay-sayers, the piece of paper to back it up), that becomes a huge asset in the job market. I work with the.NET framework now and a variety of enterprise level applications and language types (I think the count is up to twelve distinct ones that I have done professional work with now), which is a lot different than what I did six years ago.
Second, even taking the money now, you will limit the amount you make in the future and in the long run end up making a lot less. The guy offered me pretty good money, but I already make double what I would have made with him. In three years I have out-earned what I would have made in six working there, and on top of it I have a LOT more room to move up still doing what I love. Not to mention I have the option to go back for my master's now and open up even more future opportunities. There are always outliers that will drop out into some great thing and make tons of money (Gates, Zuckerburg, etc.), but the odds are really not in your favor. If you are going to make tons of money, it will probably be later on in life anyway.
Third, you don't truly know what you may enjoy yet. I went through several iterations of what I wanted to do within the field before I settled on what I do now (heavy business logic and engines as well as architecture software development). I originally wanted to do game design, then moved a bit into web, and then a bit into securities (I still do a bit of these three, but they are not may passion). My senior year is when I really figured out where I wanted to go because I saw and tried a bit of each part of the field. You may end up sticking with web development as a passion, but I would give it some time first. The experience and such you get from going through a CS program is very different than just reading up on the subject and playing with things yourself. Not to mention having a basic understanding of the other aspects of Computer Science will help your chosen field. I honest to god hate graphics work, but understanding the basics of it makes it a lot better when I write code other people have to hook into.
The one thing you will want to do though, work on some personal projects, which it sounds like you already do. I did several in my spare time when getting my degree and it greatly impressed the employers that looked at me. Prioritize your studies first, but the side projects can give them an idea of what kind of initiative you take, your level of creativity, and even let them somewhat see how you've grown as a developer (which gives them good indicators how much you can grow with a professional entity and access to much better resources). Keep with it I say, once you graduate you will see how valuable that degree ends up.
There is always a way to game the system. In my own anecdotal experience I agree that the professor makes a massive difference. In both CS and non-CS courses I understood subject material so much better when I had an engaging professor. Hell when I took data structures the concepts that I was shaky on from discrete math became substantially clearer thanks to the instructor I had (and he was just a teaching fellow!). I can program and automate a lot, but a proper teaching program? I believe there are way too many cases to make it truly effective without some crazy break-through in something like adaptive AI and human simulation.
To be fair, unless you actually GET a STEM degree, that is pretty much what everyone does. It was rather pathetic when I took my math placement test for college, out of the entire probably 300ish people that were taking it during my introduction block/week, about 2 maybe 3 of us (I know because the lab tech told me) tested out to Cal 1 which was the highest you could get (Me and another guy were from the same high school class and both took our AB Calc exams, already had credit). 70% tested either college algebra or one class higher. When reviewing other course catalogs, there was not hardly ANY requirement to get to Cal 1 unless you were doing a STEM degree.
Hell, when I did digital logic, half the class was fucking horrible at boolean arithmetic of any form and they WERE engineering students. I quickly discovered most of them were cheating off of the handful of us that actually understood how to do it.
- When writing code, you are more likely to write comments, again because it takes less effort.
Rather, I write comments because they help clarify why certain code exists in the way it does, and in some cases, what it's doing. Have some mercy on the next guy who has to work on it.
There are actually quite a few instances where you can put too many comments in the code. Often times if there are lots of comments to explain what a logic block does, rather than just explain design decisions, that means you are not using meaningful class-variable name structuring. There has actually been a very good movement at my company the past year or so to drastically improve coding standards and that was a big point that was brought up (I am quite glad too, between that and the damn hungarian notation in a strongly typed language some of our legacy code was just ugly as hell for no reason).
Coding is necessary to competently use a computer to solve problems.
I have to strongly disagree here. I work as a software engineer and I have seen both sides of this coin. I have seen multiple people working as software engineers that could model and create respectable algorithms that couldn't use a computer beyond that to save their lives. CS =/= IT. I have also seen people that couldn't write "Hello World" if I gave them Eclipse and had it auto-create and format the shell for them, but they could do stuff with Excel and other pieces of software that I was unaware that software even had those features.
I am all for this movement of we need more software developers, because we have tons to be done and no where near enough people (course this kind of works in my favor, but that is neither here nor there), but bottom line is software development is not some elementary skill that you should teach every kid in the world. Some people are just not geared to do it. That doesn't mean that software developers are inherently better or something, just different. There are still plenty of things these people can do. I just feel like we should make sure the opportunity is there (which in a lot of cases it is not right now), not try to cram it down everyone's throat (like what some of these movements are doing, and in many cases they seem to only have a rudimentary understanding of what they are trying to do).
Code.org specifically I am on the fence about still, but there are quite a number of these other movements that are just plain hogwash ("learn to code in a year, in your spare time!" yea, right).
Better in some troops than others actually. Personally I don't care about a person's sexual orientation, child or adult, but some of the ultra conservatives that they organization attracts do. Surprisingly though even some of the more conservative types in our troop are fairly tolerant (they suspected several of the boys were actually gay well before the parent organization changed their stance, and didn't care to even report it).
Call it stealing, call it fraud, call it whatever the hell you like (unless it is in a court of law, then you kind of have to get the term right), passing off someone else's work as your own is wrong and generally some form of crime (civil or criminal).
A lot of it seems to be liability for large groups. An IT department can outsource data backups and data security to "the cloud provider" and if something goes bad they only get a bit into trouble for picking the wrong provider. Meanwhile they can just point the finger at their provider and say "not our fault."
Individuals on the other hand just want their damn data, but so few are even educated on IT security at all. I know so many software developers and IT workers even that don't know the first thing about security. Meanwhile my home server I'm implementing drive level encryption on a hardware RAID 5 with physical locks going on the tower (setup isn't done, still have to modify it) with the BIOS completely locked down to where you can't do anything unless you know the BIOS password or the Windows Server Admin password.
Yea, it is probably way over the top for me, but I would rather know that any data I put on there is reasonably secure as opposed to just raising hell with some provider that did god knows what with that data before they lost it.
While I am all for equality, some of it just plan doesn't make sense. Men and women are biologically different and if we blanket apply "equal" across the board to everything you just end up with something that really inconveniences both genders. In a situation of race/religion/etc., this really doesn't affect the majority of what a person is physically comfortable with (and I don't mean as in in men or women are physically superior to the other gender, I mean as in men and women are flat out designed differently) doing. This can be applied in other areas too, the sad part is the amount of red tape we have to apply to even get close to this "good sense" approach because of the few bad people that want to exploit the system or have no notion of where to draw the line.
You know, reading through this thread people bring up plenty of points about gender discrimination, does that apply here etc. What surprises me is the fact that so many people are not bringing up the fact that this in general is idiotic because we don't have anywhere near enough software engineers to be worrying about their gender. I mean, I guess I shouldn't complain too much because it creates a better job market for me (less competition, employers more willing to compensate me much better, plenty of side work if I want it etc.), but it just seems silly to push that much for females in CS when the field just needs more people regardless of gender...
Um, what the hell are you talking about? I've done work with a Boy Scout troop for over a decade and it has been the way it is for some time.
A Boy Scout Troop is all males under the age of 18, no females. A Venture Crew, which can be related to a troop under their same sponsoring organization, have males and females up to 21. Adult leaders can be both male and female so as to avoid discriminating against say single parent households where the child only has his mother (arguably this is even more beneficial to these groups, "arguably"). There is no "pitched a fit" and now girls can be in the actual troop. Girls can only be in Venture Crews which are related to a Scout Troop, but managed differently, follow different activity guidelines normally (though some overlap, such as Philmont), and have completely different progression paths and requirements.
Seriously not trying to be a prick here, but please don't post things when you only have misleading information.
It half ass works. I mean if you need REAL security, you're right, no way in hell I would trust my files to the built in windows encryption (other than maybe BitLocker drive encrypting, but that is an entirely different mechanism). I do find it funny/interesting/depressing the "security culture" that is now marketed to the general populace. They basically throw buzzwords at them until people believe they know what they're talking about.
The data access architecture will get overly complicated using any kind of flat storage like that with a web app. Asynchronous access to flat storage becomes very complicated and only has an advantage over even a weakly structured DB if your scale is >1000 data points really.
I wrote an application that used flat storage back in college and when even as few as 2 or 3 different access points had to be accommodated for data writing I had to modify a lot of logic just to keep data from becoming corrupt. There was a bit of a performance advantage to doing it, which is why I never went with an actual SQL database, but it was only because of the very small data volume.
SQLite or MongoDB sound like good options for this kind of need, especially because they can be transitioned into much more robust platforms fairly easily. Hell doing some XML structure embedded within the columns could probably help with a lot of the expandibility needed in the structure, but there are just too many headaches in using flat file storage imho.
Yea I definitely wouldn't use NoSQL or any kind of flat file data storage for that amount of data. If you're rather averse to having a large complicated DB, SQLite is probably a good starting point especially because if you find you do need to scale up to a more robust platform it converts very easily. If you expect it to scale up quickly (hitting in the 6 figure range or higher for data points) look at your standard mySQL and other related flavors imho. MongoDB I have heard very good things about (don't have any first hand experience unfortunately, I work with mostly MS SQL, Oracle SQL and mySQL since I do enterprise level work).
I disagree. Yes there are technical challenges but money is the bottom line here. Not even a question about that. Microsoft made a strategic decision which they believe will profit the company best in the long run. There is even a good chance they are right. However as a user of their products I am under no obligation to be supportive of Microsoft's decision as it adversely affects me. I run a company that uses mostly XP workstations and they work fine for our admittedly modest needs. I don't relish the prospect of spending thousands of dollars to replace machines that weren't broken in the first place.
And you are 100% allowed to do that and entitled to have your own opinion, but you assume the risks with doing this. Begrudging them because they are making a move that really isn't unethical and is a good move for their company both financially and technologically is just silly. For the work I do on the side I have to provide licenses and such myself, and sometimes that involves spending a lot of money to get the new stuff that I need to be working on. Upgrade cost is part of it and MS has made it very clear when end of life would be for the OS. People have to make decisions and plan accordingly, but anyone raising hell is being just as selfish as Microsoft (not saying you in particular are 'raising hell' to that degree, but some people definitely are going too far).
I work at a mid-size company doing professional software development for some pretty damn large clients. I have a handle on the financials too, because I have to give them input for cost estimates on development time, support, etc. MS does have to handle support calls (I know, I've made them to them before, and we are not some massive client paying for privileges), security analysis of reported bugs, and "patch some bullshit" etc. Do you actually realize how fucking complicated Windows is under the hood? Millions of lines of code written in low level languages. I've watched 4 senior software engineers try to debug 1000 line communication module written in C spend a week on it and still not completely solve the problem. This is not "patch some bullshit" people want and if you seriously think their sales and marketing departments are not breathing down their necks you haven't done shit for professional programming at anything other than programmer. Work as a software lead for more than a year and yea, every company has those departments breathing down their neck any time something happens.
You can think whatever you want, bottom line is MS, no matter what you think of them, should not be obligated to support a twelve year old OS or start sending out their freaking source code to people that do. There are other reasons beyond "money grab" at play, but you clearly don't care to look at that anyway, so no use wasting my time there. Boiling an action down to some singular reason does not make a good point or argument.
Greed is only part of the motivation for them to do this. From the developers' perspective, it is about continuing technological advancement. Sucking away time to work on a system that is largely outdated is a pain, time consuming, and flys directly in the face of advancement and building bigger and better products. Yes, the suits at the top are doing this because of greed, but the developers want to do it for different reasons entirely.
If they commit to we will continue updating this forever without asking for more money then the world will ride THEM. When I do work on the side for people that are not close friends/family, yes I charge them, but most of it is not so I can make a quick buck. Generally I charge so that they don't say, well this guy has skills that very few people have and hes doing it for free so I am going to ride his ass as hard as possible because every tiny thing he does is worth a ton of money for me. Very few people will not take that perspective too, so you can point the finger at them and God knows Microsoft may deserve that, but the people on the other side are just as guilty as Microsoft of the greed mentality.
They don't want to upgrade because they are cheap, every other thing they have wears out and has to be replaced. They are getting a valuable piece of software at a decent cost that has lasted TWELVE YEARS. When most consumer products that are 3 to 10 times more expensive last not even half that time and get no support or updates at all. Yet they want to bleed them dry and feel justified in doing so because...? I don't know, haven't heard a good reason yet other than people are cheap and resist change naturally.
Making it scarce is one thing (e-books I am looking at you...), but they are in one shit position too. On one hand it is stupid to continue on with outdated technology that overall is hurting the industry from growing beyond an antiquated system. On the other hand it is costly for these people to upgrade. The problem is look at it from Microsoft's perspective: They either do what they are doing now and push people to update to newer versions of the software or they sink a ridiculous sum of money into continuing the patches.
What you, and TFA, suggest is out of the question simply because if they release the source to Windows they just gave away their lifeblood. How many companies do you think WON'T take that for every penny it is worth? Linus Torvalds reverse engineered UNIX in his garage with a handful of other guys and very little access to the type of information MS would have to give out, what do you think someone could do with full source, documentation, etc.? Yea, can't say I blame them for not wanting to hand that out, even if it is 12 years old.
Bear in mind that aside from security patches, Microsoft essentially provides ZERO support to most users of XP anyway. Not like I can call them up and get questions answered. Claims that continuing to support XP would be some enormous financial burden on the company are pretty absurd.
You CLEARLY do not understand how time consuming and costly it is for a company to provide even basic patches for a piece of software. On SMALL SCALE application my company has deployed it is costly to have even one developer have to do this repeatedly (I know because for one of our system I am this guy...). Having repeated interuptions for support calls, entire sets of days that have to be blocked off to patch some bullshit, and a sales department breathing down my neck because the longer this goes on the worse it looks on the company. All the while the 3 other projects I was working on (as the damn lead at that) are getting behind and it is my ass to catch them up.
It IS an enourmous financial burden, especially when they have to invest in researching the security vulnerabilities because if one is discovered and exploited before they patch it hits them in the court of public opinion (and their sales directly). Upgrading is expensive, yes everyone knows this, but guess what, this happens with every other consumer product on the market today. It is unreasonable for people to expect software companies to do it indefinitely FOR FREE. Even if they could do it with a paid service, they do still have the right to refuse service. Normally I am all for the consumer over the business (because most businesses are cut-throat douches), but what people expect with Windows XP is just insane and they don't apply basic sense to their arguments.
I agree, not sure if you could jury rig it to get an active connection to a PC (potentially it may be booting just the screen is out or loose etc.? I have seen that with other devices before such that it looks like it won't boot). A lot really depends on why it is doing this. If it just flat won't come on at all (100% know that it is never getting there) I don't believe there is a way to wipe the data.
If OP just really wants to, best bet I would say is open it up and try to fix it. Not really losing anything if you have to wipe data before selling it, because otherwise as AmiMoJO put it, only other option is a hammer.
or a great ape in disguise.
I don't know about you, but I would probably read the shit out of Thor becoming a great ape in disguise...
That would be why I posted that caveat... Obviously it isn't a 3.5'' or a 2.5'' platter drive, those are literally bigger than the phones most of the time, but conceptually it is the same principles for OS data storage and access (probably isn't using magnetic platters, but neither do SSDs and you can do the same things to both).
As far as I know, the hardware is no different than a standard platter drive and since most phones can be mounted to and read/written from a normal PC, I really see no reason why you couldn't use a secure rewrite with something like CCleaner or even use killdisk if you want to WIPE the phone. Don't quote me on it, because I've never tried myself on a phone but I would think it is fine.
Most people who say to "destroy" the drive are just being overly cautious. For anything that does multiple overwrites on all drive sectors you should be fine for the most part. Technically yes the only way to guarantee the drive is unreadable is destruction, but for an individual that is normally over the top (says this as I've destroyed a few old drives myself...).
I disagree. I've got the experience now, but the foundation you get from the degree I feel is more valuable. And as I stated, you also pigeon hole yourself into a technology set. You may learn *something* related to the field, but not the specifics to build a general foundation for software development. Some people may vary from that, but that is my opinion and experience.
Based on what I've heard from friends and family too, in their fields and in software development, having the degree makes a huge difference because many companies will leverage the fact that you don't have a degree to drive your salary down. When you have a degree, they have no leg to stand on, especially if it is a general computer science degree. I've heard/seen some people that had something somewhat related to computer science (telecomms engineering and the such) they even used that against them to get their salary lower. When you have a computer science degree, there is very little they can say.
My advice is invest in the education. I had a similar situation when I was in my second year (I had been doing software development as a hobby for about six years by then). A guy came to me who had a small business developing business websites and managing them. He wanted me to come work for him, but it would have turned into a full time job and I likely would have had to cut back on study time. Yes, I would have made a lot more money earlier, but there were several pitfalls I identified and they kept me from doing it.
First, pigeon-holing yourself into a technology set is a bad idea. You may know HTML/CSS/PHP/mySQL, but those technologies have somewhat limited job opportunities. If you have a very strong fundamental understanding of Computer Science (and in spite of the nay-sayers, the piece of paper to back it up), that becomes a huge asset in the job market. I work with the .NET framework now and a variety of enterprise level applications and language types (I think the count is up to twelve distinct ones that I have done professional work with now), which is a lot different than what I did six years ago.
Second, even taking the money now, you will limit the amount you make in the future and in the long run end up making a lot less. The guy offered me pretty good money, but I already make double what I would have made with him. In three years I have out-earned what I would have made in six working there, and on top of it I have a LOT more room to move up still doing what I love. Not to mention I have the option to go back for my master's now and open up even more future opportunities. There are always outliers that will drop out into some great thing and make tons of money (Gates, Zuckerburg, etc.), but the odds are really not in your favor. If you are going to make tons of money, it will probably be later on in life anyway.
Third, you don't truly know what you may enjoy yet. I went through several iterations of what I wanted to do within the field before I settled on what I do now (heavy business logic and engines as well as architecture software development). I originally wanted to do game design, then moved a bit into web, and then a bit into securities (I still do a bit of these three, but they are not may passion). My senior year is when I really figured out where I wanted to go because I saw and tried a bit of each part of the field. You may end up sticking with web development as a passion, but I would give it some time first. The experience and such you get from going through a CS program is very different than just reading up on the subject and playing with things yourself. Not to mention having a basic understanding of the other aspects of Computer Science will help your chosen field. I honest to god hate graphics work, but understanding the basics of it makes it a lot better when I write code other people have to hook into.
The one thing you will want to do though, work on some personal projects, which it sounds like you already do. I did several in my spare time when getting my degree and it greatly impressed the employers that looked at me. Prioritize your studies first, but the side projects can give them an idea of what kind of initiative you take, your level of creativity, and even let them somewhat see how you've grown as a developer (which gives them good indicators how much you can grow with a professional entity and access to much better resources). Keep with it I say, once you graduate you will see how valuable that degree ends up.
There is always a way to game the system. In my own anecdotal experience I agree that the professor makes a massive difference. In both CS and non-CS courses I understood subject material so much better when I had an engaging professor. Hell when I took data structures the concepts that I was shaky on from discrete math became substantially clearer thanks to the instructor I had (and he was just a teaching fellow!). I can program and automate a lot, but a proper teaching program? I believe there are way too many cases to make it truly effective without some crazy break-through in something like adaptive AI and human simulation.
To be fair, unless you actually GET a STEM degree, that is pretty much what everyone does. It was rather pathetic when I took my math placement test for college, out of the entire probably 300ish people that were taking it during my introduction block/week, about 2 maybe 3 of us (I know because the lab tech told me) tested out to Cal 1 which was the highest you could get (Me and another guy were from the same high school class and both took our AB Calc exams, already had credit). 70% tested either college algebra or one class higher. When reviewing other course catalogs, there was not hardly ANY requirement to get to Cal 1 unless you were doing a STEM degree.
Hell, when I did digital logic, half the class was fucking horrible at boolean arithmetic of any form and they WERE engineering students. I quickly discovered most of them were cheating off of the handful of us that actually understood how to do it.
- When writing code, you are more likely to write comments, again because it takes less effort.
Rather, I write comments because they help clarify why certain code exists in the way it does, and in some cases, what it's doing. Have some mercy on the next guy who has to work on it.
There are actually quite a few instances where you can put too many comments in the code. Often times if there are lots of comments to explain what a logic block does, rather than just explain design decisions, that means you are not using meaningful class-variable name structuring. There has actually been a very good movement at my company the past year or so to drastically improve coding standards and that was a big point that was brought up (I am quite glad too, between that and the damn hungarian notation in a strongly typed language some of our legacy code was just ugly as hell for no reason).
Coding is necessary to competently use a computer to solve problems.
I have to strongly disagree here. I work as a software engineer and I have seen both sides of this coin. I have seen multiple people working as software engineers that could model and create respectable algorithms that couldn't use a computer beyond that to save their lives. CS =/= IT. I have also seen people that couldn't write "Hello World" if I gave them Eclipse and had it auto-create and format the shell for them, but they could do stuff with Excel and other pieces of software that I was unaware that software even had those features.
I am all for this movement of we need more software developers, because we have tons to be done and no where near enough people (course this kind of works in my favor, but that is neither here nor there), but bottom line is software development is not some elementary skill that you should teach every kid in the world. Some people are just not geared to do it. That doesn't mean that software developers are inherently better or something, just different. There are still plenty of things these people can do. I just feel like we should make sure the opportunity is there (which in a lot of cases it is not right now), not try to cram it down everyone's throat (like what some of these movements are doing, and in many cases they seem to only have a rudimentary understanding of what they are trying to do).
Code.org specifically I am on the fence about still, but there are quite a number of these other movements that are just plain hogwash ("learn to code in a year, in your spare time!" yea, right).
Better in some troops than others actually. Personally I don't care about a person's sexual orientation, child or adult, but some of the ultra conservatives that they organization attracts do. Surprisingly though even some of the more conservative types in our troop are fairly tolerant (they suspected several of the boys were actually gay well before the parent organization changed their stance, and didn't care to even report it).
Call it stealing, call it fraud, call it whatever the hell you like (unless it is in a court of law, then you kind of have to get the term right), passing off someone else's work as your own is wrong and generally some form of crime (civil or criminal).
A lot of it seems to be liability for large groups. An IT department can outsource data backups and data security to "the cloud provider" and if something goes bad they only get a bit into trouble for picking the wrong provider. Meanwhile they can just point the finger at their provider and say "not our fault."
Individuals on the other hand just want their damn data, but so few are even educated on IT security at all. I know so many software developers and IT workers even that don't know the first thing about security. Meanwhile my home server I'm implementing drive level encryption on a hardware RAID 5 with physical locks going on the tower (setup isn't done, still have to modify it) with the BIOS completely locked down to where you can't do anything unless you know the BIOS password or the Windows Server Admin password.
Yea, it is probably way over the top for me, but I would rather know that any data I put on there is reasonably secure as opposed to just raising hell with some provider that did god knows what with that data before they lost it.
While I am all for equality, some of it just plan doesn't make sense. Men and women are biologically different and if we blanket apply "equal" across the board to everything you just end up with something that really inconveniences both genders. In a situation of race/religion/etc., this really doesn't affect the majority of what a person is physically comfortable with (and I don't mean as in in men or women are physically superior to the other gender, I mean as in men and women are flat out designed differently) doing. This can be applied in other areas too, the sad part is the amount of red tape we have to apply to even get close to this "good sense" approach because of the few bad people that want to exploit the system or have no notion of where to draw the line.
You know, reading through this thread people bring up plenty of points about gender discrimination, does that apply here etc. What surprises me is the fact that so many people are not bringing up the fact that this in general is idiotic because we don't have anywhere near enough software engineers to be worrying about their gender. I mean, I guess I shouldn't complain too much because it creates a better job market for me (less competition, employers more willing to compensate me much better, plenty of side work if I want it etc.), but it just seems silly to push that much for females in CS when the field just needs more people regardless of gender...
Um, what the hell are you talking about? I've done work with a Boy Scout troop for over a decade and it has been the way it is for some time.
A Boy Scout Troop is all males under the age of 18, no females. A Venture Crew, which can be related to a troop under their same sponsoring organization, have males and females up to 21. Adult leaders can be both male and female so as to avoid discriminating against say single parent households where the child only has his mother (arguably this is even more beneficial to these groups, "arguably"). There is no "pitched a fit" and now girls can be in the actual troop. Girls can only be in Venture Crews which are related to a Scout Troop, but managed differently, follow different activity guidelines normally (though some overlap, such as Philmont), and have completely different progression paths and requirements.
Seriously not trying to be a prick here, but please don't post things when you only have misleading information.
It half ass works. I mean if you need REAL security, you're right, no way in hell I would trust my files to the built in windows encryption (other than maybe BitLocker drive encrypting, but that is an entirely different mechanism). I do find it funny/interesting/depressing the "security culture" that is now marketed to the general populace. They basically throw buzzwords at them until people believe they know what they're talking about.
The data access architecture will get overly complicated using any kind of flat storage like that with a web app. Asynchronous access to flat storage becomes very complicated and only has an advantage over even a weakly structured DB if your scale is >1000 data points really.
I wrote an application that used flat storage back in college and when even as few as 2 or 3 different access points had to be accommodated for data writing I had to modify a lot of logic just to keep data from becoming corrupt. There was a bit of a performance advantage to doing it, which is why I never went with an actual SQL database, but it was only because of the very small data volume.
SQLite or MongoDB sound like good options for this kind of need, especially because they can be transitioned into much more robust platforms fairly easily. Hell doing some XML structure embedded within the columns could probably help with a lot of the expandibility needed in the structure, but there are just too many headaches in using flat file storage imho.
Yea I definitely wouldn't use NoSQL or any kind of flat file data storage for that amount of data. If you're rather averse to having a large complicated DB, SQLite is probably a good starting point especially because if you find you do need to scale up to a more robust platform it converts very easily. If you expect it to scale up quickly (hitting in the 6 figure range or higher for data points) look at your standard mySQL and other related flavors imho. MongoDB I have heard very good things about (don't have any first hand experience unfortunately, I work with mostly MS SQL, Oracle SQL and mySQL since I do enterprise level work).
I disagree. Yes there are technical challenges but money is the bottom line here. Not even a question about that. Microsoft made a strategic decision which they believe will profit the company best in the long run. There is even a good chance they are right. However as a user of their products I am under no obligation to be supportive of Microsoft's decision as it adversely affects me. I run a company that uses mostly XP workstations and they work fine for our admittedly modest needs. I don't relish the prospect of spending thousands of dollars to replace machines that weren't broken in the first place.
And you are 100% allowed to do that and entitled to have your own opinion, but you assume the risks with doing this. Begrudging them because they are making a move that really isn't unethical and is a good move for their company both financially and technologically is just silly. For the work I do on the side I have to provide licenses and such myself, and sometimes that involves spending a lot of money to get the new stuff that I need to be working on. Upgrade cost is part of it and MS has made it very clear when end of life would be for the OS. People have to make decisions and plan accordingly, but anyone raising hell is being just as selfish as Microsoft (not saying you in particular are 'raising hell' to that degree, but some people definitely are going too far).
I work at a mid-size company doing professional software development for some pretty damn large clients. I have a handle on the financials too, because I have to give them input for cost estimates on development time, support, etc. MS does have to handle support calls (I know, I've made them to them before, and we are not some massive client paying for privileges), security analysis of reported bugs, and "patch some bullshit" etc. Do you actually realize how fucking complicated Windows is under the hood? Millions of lines of code written in low level languages. I've watched 4 senior software engineers try to debug 1000 line communication module written in C spend a week on it and still not completely solve the problem. This is not "patch some bullshit" people want and if you seriously think their sales and marketing departments are not breathing down their necks you haven't done shit for professional programming at anything other than programmer. Work as a software lead for more than a year and yea, every company has those departments breathing down their neck any time something happens.
You can think whatever you want, bottom line is MS, no matter what you think of them, should not be obligated to support a twelve year old OS or start sending out their freaking source code to people that do. There are other reasons beyond "money grab" at play, but you clearly don't care to look at that anyway, so no use wasting my time there. Boiling an action down to some singular reason does not make a good point or argument.
Whose forcing them? They can do whatever they want.
That is exactly what TFA is talking about. Should they be obligated to provide a means to continue support.
Greed is only part of the motivation for them to do this. From the developers' perspective, it is about continuing technological advancement. Sucking away time to work on a system that is largely outdated is a pain, time consuming, and flys directly in the face of advancement and building bigger and better products. Yes, the suits at the top are doing this because of greed, but the developers want to do it for different reasons entirely.
If they commit to we will continue updating this forever without asking for more money then the world will ride THEM. When I do work on the side for people that are not close friends/family, yes I charge them, but most of it is not so I can make a quick buck. Generally I charge so that they don't say, well this guy has skills that very few people have and hes doing it for free so I am going to ride his ass as hard as possible because every tiny thing he does is worth a ton of money for me. Very few people will not take that perspective too, so you can point the finger at them and God knows Microsoft may deserve that, but the people on the other side are just as guilty as Microsoft of the greed mentality.
They don't want to upgrade because they are cheap, every other thing they have wears out and has to be replaced. They are getting a valuable piece of software at a decent cost that has lasted TWELVE YEARS. When most consumer products that are 3 to 10 times more expensive last not even half that time and get no support or updates at all. Yet they want to bleed them dry and feel justified in doing so because...? I don't know, haven't heard a good reason yet other than people are cheap and resist change naturally.
Making it scarce is one thing (e-books I am looking at you...), but they are in one shit position too. On one hand it is stupid to continue on with outdated technology that overall is hurting the industry from growing beyond an antiquated system. On the other hand it is costly for these people to upgrade. The problem is look at it from Microsoft's perspective: They either do what they are doing now and push people to update to newer versions of the software or they sink a ridiculous sum of money into continuing the patches.
What you, and TFA, suggest is out of the question simply because if they release the source to Windows they just gave away their lifeblood. How many companies do you think WON'T take that for every penny it is worth? Linus Torvalds reverse engineered UNIX in his garage with a handful of other guys and very little access to the type of information MS would have to give out, what do you think someone could do with full source, documentation, etc.? Yea, can't say I blame them for not wanting to hand that out, even if it is 12 years old.
Bear in mind that aside from security patches, Microsoft essentially provides ZERO support to most users of XP anyway. Not like I can call them up and get questions answered. Claims that continuing to support XP would be some enormous financial burden on the company are pretty absurd.
You CLEARLY do not understand how time consuming and costly it is for a company to provide even basic patches for a piece of software. On SMALL SCALE application my company has deployed it is costly to have even one developer have to do this repeatedly (I know because for one of our system I am this guy...). Having repeated interuptions for support calls, entire sets of days that have to be blocked off to patch some bullshit, and a sales department breathing down my neck because the longer this goes on the worse it looks on the company. All the while the 3 other projects I was working on (as the damn lead at that) are getting behind and it is my ass to catch them up.
It IS an enourmous financial burden, especially when they have to invest in researching the security vulnerabilities because if one is discovered and exploited before they patch it hits them in the court of public opinion (and their sales directly). Upgrading is expensive, yes everyone knows this, but guess what, this happens with every other consumer product on the market today. It is unreasonable for people to expect software companies to do it indefinitely FOR FREE. Even if they could do it with a paid service, they do still have the right to refuse service. Normally I am all for the consumer over the business (because most businesses are cut-throat douches), but what people expect with Windows XP is just insane and they don't apply basic sense to their arguments.