Jump to content

  • Log In with Google      Sign In   
  • Create Account


Drexir

Member Since 22 Sep 2007
Offline Last Active May 25 2014 01:07 PM
-----

Posts I've Made

In Topic: Questions for all programmers.

20 May 2014 - 12:37 PM

Thanks for all the responses guys. A lot of interesting results. A good amount of you started out programming at an early age. Which leads me to believe most of the people were in an environment that heavily influenced your direction of learning at such a young age. Even some of you made comments hinting at adults that were around to give aide and direction. 

 

For me it was completely different. Not many people even knew how to turn on a computer much less even cared to know how. At around nine years old there was a guy that my mom asked to come repair the computer. I watched him do this and the amount of repairing that was needed took hours. For some reason I would just watch him do this. Mesmerized at all this magical stuff he was doing with the computer. Every time he would come by to do upgrades or maintenance. Just watch. Then started asking how he did this and that. I started to try and do it my self. Taking the computer apart and putting it back together over and over just to try and understand how it worked. By the time I was 11 and had picked up a lot he had left to work for the military overseas. So the only person I knew that had any knowledge what so ever was gone. But that didn't stop me I had learned enough to peak my interest. Long story short. I was the kid in town at the age of 13 going around fixing every one's computer. At the same time I was addicted to a game called Diablo. And I wanted to know how it worked. So using my Computer Technician skills I ruffled through all the files the game had.

 

Sadly most of it was gibberish. When I was 15 I still wasn't able to translate the gibberish but I found out that I could create my own gibberish. I found tutorials on C++ that wasn't enough. So I tried to go to my local bookstore. They didn't have a whole lot and wasn't really sure what I was looking for. I asked the store owner do you have any books about C++ had no clue what I was talking about but neither did I. So I turned back to the internet and asked "google" how to make games. I finally found something and it was gameinstitute.com. Where I purchased C++ Module I & II. Surprising I was able to somewhat understand the text. It was really just obstacle after obstacle I would sit for days trying to understand a concept to finally understand it somewhat. In C++ module 2 though there was a few chapters on Win32 graphics programming. By this time I was so bored of the console text output and my real goal was to see how games were made. Probably the last three chapters of module 1 and the first 3 module 2 I just completely skipped to get to the graphics programming. Those chapters were probably the most important they didn't look important the only thing that looked important was the chapters about Win32 API. At first I was saying this is easy. Then with a flip of a page it went over my head. About buffer's and double buffers. Pointers I realized I didn't really understand from the previous module. On top of that the math started to creep in. Trignometry, Algebra, etc. The terminology it was using alone left me unable to continue. Let's just say I was really terrible at math. At that time I didn't even know order of operations.

 

At that point I was sixteen I had dropped out of high school and got my GED. Decided I would take some community college classes on math. Where I excelled. Even though I didn't even know order of operations and just basic arithmetic. I ended up taking 6 math classes in two years. Long story short I ended up attending Full Sail University. Left due to several reasons. Didn't program for two years after that. This year I started to get back into it. This time I had learned a lot of lessons though. I didn't care how to program certain things. I wanted to know why certain things worked. Generally this falls under some Computer Science classes. I didn't pick back up C++ instead I went for picking up C. I discovered this tutorial series at this website: http://www.computerscienceforeveryone.com/Course_1/Unit_1/Lesson_1/

 

That is where I truly started to learn about pointers, how the computer works, sadly the the author stopped making them. In those two weeks I watched those videos I learned more about programming then all my time spent before learning programming before. Now I've been reading a book called "Write Great Code: Volume I: Understanding the Machine". A lot of it teaches in the same way. I'm only on Chapter 3 now. But it's continuing to help me understand the code that I'm writing.

 

While doing this I've been referring people new to programming to this material. On forums, IRC channels, etc. Every time I do though I get pro programmers telling me I'm an idiot. That you don't need to learn what the machine does to program or they will take the title of that book literally and say you don't need to learn how the machine works to write good code. 

 

That is true. Afterall you have people at khanacademy.org learning javascript. You have codeacademy.com teaching you HTML, Ruby, Python, etc. There are many other sites, many other programmers who have never learned how the machine works. All those people learning to program obviously don't need any understanding of how the machine works to program. For video games you can go pickup the unity engine and program scripts in C#. Various other places prove you don't need to understand the machine to learn how to program.

 

But hot damn if you understand how the machine works is it not truly refreshing? Every line of code you write you have some true understanding of it? 

 

I think that very line of questioning offends people. I'm not really sure why? Maybe I am missing something that the pros / gurus / experts know that I don't. 


In Topic: Visual Studio Questions

07 February 2014 - 10:23 PM

Just make sure that you've securely wrapped the HDD with aluminum foil before running any installer. It will keep all the grues out every time. Make sure to take it off before running apps though so it breathes.

 

I'm not even sure how to respond to that. 

 

You remind me of the type of people who say "anti-malware software is for people that lack common sense". People that clearly don't have a clue what their talking about. Instead of putting their effort into getting a clue they prefer to degrade other's who don't walk the same line of stupidity.

 

No idea why I'm still typing.


In Topic: Visual Studio Questions

05 February 2014 - 09:51 PM


Ah, I think I see the differences.

 

Umm... I think you misread the entire post. Yea it was a little long. So I can understand not reading it all or reading it all correctly. But you didn't get anything I was saying.

 

Yes you can install multiple versions of visual studio.

 

"No uninstall is necessary?"

 

I guess that verifies my assumption that you've never attempted to uninstall visual studio. 

 

No I was not talking about very long term situations or even long term for that matter. I feel stupid doing this but I'm gonna quote myself:

 

But by the time you have a problem it's too late. Because let's say even a year goes by.

 

 

Implying that a year is plenty of time for an average user to have cluttered the hard drive. I've seen really lightweight users come back even a few months later. After cleaning it out for them. And seeing it cluttered again. Because they just mindlessly installed anything that offered to install or download. But that's getting way off point. Bottom line it's not measured in time. It's measured in the persons usage and what guidelines they set forth if any at all. 

 

I probably should have included that if theirs anything of worth on your hard drive then you should do backups as part of your routine. I don't know why your backups wouldn't work. Don't think I've ever encountered a problem with my backups. I've also on many occasions done backups for clients and family. Never failed me. The only way I could see backups failing is if you stored them all in the same room and the building caught fire.

 

Also as long as you maintain your hard drive it shouldn't fail you. Using a program like Spinrite every once in a while. Also it's not just good for preventative maintenance I've also used it on drives that have completely failed. Where every other program simply couldn't recover the drive. The program is capable of not only recovering a dead drive but being capable of using it for a period of time. Though however I wouldn't recommend that. 

 

And no they haven't really made any progress on the uninstaller. I mean yea you can actually uninstall it now and it will actually uninstall properly. I wouldn't really call that progress. The programs uninstaller still suffers from the inability for the programmers to clean up after themselves. You still have the remnants laying all around the hard drive that you have to go and manually delete. 

 

Going from visual studio 2005 to 2008 to 2010 to now 2013. Slowly they started to take away the ability to customize what you could install. With visual studio 2013 you have no options what so ever. It installs everything. The only thing you get to choose is the installation directory. That's about the extent of the customization of the installer. Which is laughable. They slowly downgraded the installer into literally nothing. What I found surprising is that with a google search there's only a couple of search results that come up about it. It's like visual studio user voice I think the website is called. There are multiple instances of it on their. Here is one:

 

http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2207833-make-the-visual-studio-installer-more-customizable

 

Which one of the developers responded in december with:

 

"Thank you for using Visual Studio and for your commitment to improving it. We are currently evaluating whether we will be able to include this into the product".

 

That was in december... If you can include it into this product? Why did you ever take it out? Just dumb honestly. So yea I'll probably end up attempting to delete it out of the .iso file but I have a feeling they removed the ability to do that. It will probably just re download the missing parts. In which case I could just block the connection. That would probably break it though. It would probably start shouting "No internet connection. Check your connection. Unable to proceed. Retry?" Even though it's an OFFLINE installer. Lol it's like DRM on a FREE edition of visual studio. I'll probably just end up seeing if I can't find visual studio 2010 download. Where I can actually pick what I want installed. Though that will probably still sneak in some unneeded programs. Have to end up reverting to visual studio 2003 a decade old software. Because apparently visual studio is reversing technological capability in time. 


In Topic: Visual Studio Questions

05 February 2014 - 04:40 PM

Yea it's not the hard disk space that I'm worried about. It wouldn't bother me if it was 20GB as I only use 115GB of the 1TB hard drive provided.

 

          Like any program that you install on windows it manages to do a crappy job every time of cleaning up. When you hit that uninstall button it's more or less an illusion making you believe it's uninstalled but in fact it's left registry entries and files and folders thrown in every corner of the drive. I'm sure you're still wondering okay why is that a problem? 

 

          Well the problem is not very obvious until you actually have a problem. But by then it's too late. Let's run through a scenario that's pretty common. You install a driver more specifically for your video card. You every so often update it; obviously, I hope. Considering this is gamedev. Even so if you're not a game developer and/or gamer. Graphics cards have expanded their uses into more areas. Whether it's your browser, your media player, your 3D modeling program, and hell even Photoshop. A lot of programs are starting to take advantage of hardware acceleration.

 

          Their is a bug in the driver you have installed, everything is working fine. But every time you want to enable GPU acceleration in Firefox. The entire driver just crashes. Even worse your entire system just comes to a halt. The programmers of this driver are well aware of the issue, and working hard to fix it. They have a fix and release a new driver. You download the brand new driver and install it. Excited you fire up firefox and enable GPU acceleration. Only to be disappointed. You're facing the exact same issue. You're either like 99% of the population and are furious so you immediately write to the graphics card driver team reporting to them it doesn't work. Or you're the 1% who says "hmm interesting I wonder why it isn't working let's try troubleshooting it." The 99% are in contact with the experts, and the experts try to understand exactly what went wrong. They finally tell you to try reinstalling the driver as a first method of troubleshooting. Meanwhile the 1% that are troubleshooting on their own discover reinstalling doesn't fix it. So they go onto troubleshooting step #2. Uninstall the driver, try to find what it didn't uninstall. You manage to find all the remnants of leftovers. You then try again to install the driver. And it's magically working now.

 

          Now the other 99% are still angry, and getting angrier every time the suggestion from the expert your in contact with fails. Until the expert finally just suggests to obliterate every trace of the driver from the hard drive. Next start on a fresh install. Well now it's magically working again. 

 

          Though that's a very simplistic issue. Very quickly imagine that this problem was not only contributed by a bug in the driver. Their is also a bug in Firefox. So now you have two sources that need this treatment. Still simple. Let's imagine a more realistic scenario where you don't know what program is causing whatever the issue is. 

 

          You're the person who doesn't care about how many different programs you have installed. Even if half of them you never use. And god bless you if you have visual studio installed. Because you have 10s of different programs that are installed just by one software you have. But you never cared. Now all of a sudden you do because there is a problem. But by the time you have a problem it's too late. Because let's say even a a year goes by. And you've installed a large number of programs. Because well what's the harm?

 

          Let's not even try to get into that scenario. What would be ironically even more painful if it was the same scenario, and you didn't actually have a problem you just wanted to upgrade to the latest version of visual studio. Well in that case good luck. 

 

          Now i'm more of a computer repair guy than a programmer. I do programming more as a hobby and really only dream to accumulate enough knowledge to program for a living. Being a computer technician. Having's seen hundreds literally if not more computers that I have worked on. Back during the days of Windows XP really malware was the biggest problem. However it's not as bad today. Instead what I see more of is problems arising from just too much crud building on the hard drive. Hell just reading tech support forums. In which most of the time their problems come from the amount of different programs installed. Also programs that were uninstalled but never cleaned out properly, etc. 

 

          Even my self have faced this problem numerous times. The only advantage I had is that I had fixed the exact same problem on a much larger scale numerous times in the past. So  I needed  to come up with a system that prevented this problem from occurring. Granted you can lower the frequency of this problem to close to never happening. However if you do come across that problem you will have already employed a better system. To the point where troubleshooting becomes trivial. 

 

  1. Don't go installing everything you come across. 
  2. Don't just rapidly click through the installer. Look at what it's installing, where it's installing it, and why. Guarantee you will be hard pressed to find numerous i  installers that contain completely unnecessary stuff. Where a simple click on a check box can solve.
  3. Most importantly don't depend on the programmer of the software to clean up with the provided uninstaller. Clean up after every uninstall. Or every so often like  during your routine maintenance.
  4. Take a look at your control panel during your routine maintenance. I would say a good rule of thumb if you have over 50 programs installed. Quickly run  through the list and ask your self "Do I need or at least will ever need this program" If the answer is no then get rid of it.
  5. Have somewhat of a organized structure. I'm no where near an organized person. But any organization is better than none. It not only helps you but also the  speed of your computer. If you have an easier time finding things more than likely your operating system has an easier time finding things.

 

          For you programmers think of it as a bubble sort. It's terribly inefficient so give it some human intervention by reducing the data set (Reducing the amount of programs installed). Then reducing the number of passes it has to make (any organization is better than none).

 

          I think it's important for a technician to not only fix a problem but prevent problems. Which if you have some simple guidelines that not only you can follow, but also the customers you help can follow. Can potentially save both parties headaches. 

 

          So with all that said. It may seem insane to other people to follow those guidelines. Though when you deal with these problems on a daily basis it becomes apparent that there's no system in place on Windows to do it properly, It really isn't in your favor. So you gotta put your own system in place to put it back in your favor. Now there's obviously a point at which you're overdoing it. Suddenly it doesn't become in favor for you any more. Which is a good reason to have guidelines to follow to not only make sure you are doing the minimum, but also not going overboard with it. Simply replacing bad habits with good habits.  

 

          Visual Studio has probably been the worse kind of software in that respect. It's even worse that it's developed by the same company that develops the operating system. Which knows how it works; to know it's flaws. Instead of using that knowledge for the benefit of the end user. They seem to exploit it in the worse way possible. Anti-virus software has been known to be notoriously hard to get rid of. Visual Studio seems to one up it in a bad way. 

 

          Apparently from the responses no one has ever attempted to uninstall visual studio. I encourage you to setup a virtual machine. Install visual studio on it. Then attempt to uninstall it. When the situation get's to the point of wondering if wiping the hard drive would be a better option. You will understand my reluctance. It honestly act's like a virus. Which was the whole reason I made this thread.

 

 

@frob To the above post. I stated that the 20 something different programs it installed were automatically installed. Without my permission. I find it hard to believe to write, compile, debug C++, and C# in visual studio, That it needs to install 14 MySQL programs to operate properly. Why they would program it in a way where each component relies on all the others to be installed. Even if that component serves no purpose to the other. It's even more important when you do have all those different components to make them modular. To function independently. I mean think about it if that's the case then if just one  component fails then it's like an avalanche where it takes out all the others. 


In Topic: Vector Reflection

19 June 2011 - 09:25 AM

This line:

dot = Vector_Dot(v,w);

should be

dot = Vector_Dot(v,n);

ie. you should use the normalized vector here as well



Thank you that fixed it my only problem now is that where there should be a negative I have a positive and where i have a negative it should be positive otherwise the values I get out are correct here is an example of what I'm talking about


TVECTOR Vector_Reflect(TVECTOR, TVECTOR) did not validate.
	Inputs:
		<  2,  2,  5,  0 >
		<  7, -7, -3,  0 >
	Your output:
		<  3.9626169,  0.03738296,  4.1588783,  0 >
	Correct output:
		< -3.9626169, -0.03738308, -4.1588783,  0 >

TVECTOR Vector_Reflect(TVECTOR, TVECTOR) did not validate.
	Inputs:
		<  3, -8,  0,  0 >
		<  0,  0,  0,  0 >
	Your output:
		<  3, -8,  0,  0 >
	Correct output:
		< -3,  8,  0,  0 >

TVECTOR Vector_Reflect(TVECTOR, TVECTOR) did not validate.
	Inputs:
		< -1,  4, -7, -8 >
		<  5,  2, -7, -1 >
	Your output:
		< -8.5949373,  0.96202517,  3.6329117, -6.4810123 >
	Correct output:
		<  8.5949364, -0.9620254, -3.6329107,  6.4810128 >

TVECTOR Vector_Reflect(TVECTOR, TVECTOR) did not validate.
	Inputs:
		< -4, -4,  7,  6 >
		<  0,  0,  0,  0 >
	Your output:
		< -4, -4,  7,  6 >
	Correct output:
		<  4,  4, -7, -6 >

TVECTOR Vector_Reflect(TVECTOR, TVECTOR) did not validate.
	Inputs:
		< -5, -2, -7,  0 >
		<  1,  0,  0,  0 >
	Your output:
		<  5, -2, -7,  0 >
	Correct output:
		< -5,  2,  7,  0 >

edit: NEVERMIND like right when I posted it I figured out the problem on this line
v = Vector_Sub(v, n);
it should be
v = Vector_Sub(n, v);

edit2: thank you again

PARTNERS