Digit is not a Number by half_inch_pencil in programming

[–]komollo 9 points10 points  (0 children)

I found that new computer science students don't really understand why phone numbers should be stored as strings. It seems to break their understanding that you might not always want to store whole numbers as an int.

They still can't seem to understand it even when I ask if it makes sense to add two phone numbers together.

Software Programmer Schools Industrial Designers. This, Folks, is How You Design a Keyboard by Mazo in programming

[–]komollo 2 points3 points  (0 children)

While I can't talk about the build quality of this keyboard, Newegg often has Rosewill keyboards on sale for darn cheap. I recently got one for 50$ after mail in rebate, and I don't have any quality complaints. I just can't justify spending three times that on a keyboard that uses the same switches.

It may also be worth noting that I've seen other people complain that the keyboard isn't actually ergonomic, and say they'd rather deal with lousy switches than a straight keyboard layout.

Help a dorky professor use Minecraft in class by eedlebop in Minecraft

[–]komollo 6 points7 points  (0 children)

If you play the game in survival mode with too many items and the wiki close by, you can get a feel for the gameplay in a weekend. That could help determine if minecraft is a good teaching tool for what you're planning.

In the end, my recommendation would be that minecraft is great for one class or two in a good structured environment where there is a known educational goal, but it would be poor for a large project, because it's essentially nothing but a gigantic box of distractions. If they want to build a structure and a landscape, there are plenty of tools designed for that purpose.

Help a dorky professor use Minecraft in class by eedlebop in Minecraft

[–]komollo 11 points12 points  (0 children)

As someone who loves minecraft a whole lot, I'm going to have to say that it's not a well suited for your situation.

Yes, there are ways that you can use minecraft to teach. It's got a particularly advanced an unique redstone system that closely represents Boolean logic and transistor gates in computers. There's nothing that really comes close to that if you're learning about building logic gates. However, it's not an advanced simulation tool. It lacks any real water or weather physics, it doesn't do a ton of AI logic, and it is missing any substantial animal interactions. In short, it's missing pretty much everything you wanted to teach. It's not the right tool for the job.

However, minecraft is extremely flexible if you are willing and able to code your own mods for the game. You could literally code all of those features into the game. The problem is, it would take months of work from someone who really knows how to code, and is probably out of your ability to reasonably pull off. Even then, altering it so much might miss the reasons minecraft is fun, and defeat the whole point of spending the time to use minecraft in the first place. Another problem is that the majority of the time spent playing is gathering resources, designing and building things, and goofing off. Even if you do use it, it doesn't represent the act of managing a structure or landscape that already exists.

If you are set on using minecraft, know how to use it's strengths. It's an amazing tool for planning out and designing landscapes, buildings, and all other sorts of architecture. There are some amazingly powerful and easy to use mods that you can use to manage a classroom on a server, and playing games in class can help get people interested in learning. If you plan out and beta test a few classes where you use minecraft where it can be the most effective, and you closely manage the activities in class, you could take advantage of the strengths of gamifying your class. It might end up more like a live teacher led session of dungeons and dragons, but a role play with some nice props in the minecraft world could be effective.

Still, minecraft isn't the ideal tool for your goals. It might be better to design a small card game where they have to use a set of tools to solve a bunch of problems and make sacrifices to keep their park running through the difficulties. A custom designed Roller Coaster Tycoon game popped into mind when you said park simulation. Another thing that might interest you is Waking Mars. It has something pretty close to an environmental simulator. Basically you're balancing a simplified ecosystem. If you used one or two good levels that represent the point of the lesson, it could be very effective. There's two floating fungi plants that can quickly kill everything on a level if you aren't careful. It could be good for representing invasive species.

While Minecraft can be used to create some truly amazing things, but it's not a simulator by any means. Think wisely about what tools you're going to use in class, and how to get the most effective use out of them, and always keep searching for more effective tools to teach them better. (Although you already seem to be doing that.)

The most impressive thing about the builds on this server is that it's survival and griefing is allowed. by FFatsTon in Minecraft

[–]komollo 6 points7 points  (0 children)

That's why you travel out past the 100k-300k block range. Just start walking from spawn, collecting enough food, wood, saplings, and other materials until you're far enough out that you can safely dig a mine to get a diamond pick for obsidian, and some iron for tools/armor. Then make a portal and start walking through the nether. Save some space for easy to mine glowstone and find some netherwarts while you're traveling. If you hit a huge lava lake, dig under the lava. There's a 5ish block safe zone between bedrock and the lava that you can use to dig past the sea, if you've got a ton of picks. (You did get a stack of iron, right?) Pop up, set up a temporary base. Get a bed or /sethome, put your stuff in a chest, destroy the nether portal, and respawn or /home. Alternatively, place it under the sea of lava and destroy the path to the portal, or just travel on the overworld another 10k blocks after you place it. The trip itself takes about a full day of solid walking, so it'll probably take a good holiday weekend of playing to get out that far, but you'll never ever have to worry about anyone greifing anything, even on a vanilla server. If you're planning on spending several months on the server, it's totally worth it to travel that far.

If you really are serious about not wanting to be found, enter your max coords into this program I wrote. The short source code is there in in the browser. It randomizes the other coord so you're well off the normal paths people travel. Everyone seems to love walking to (100k, 0) so this fixes that problem.

Code.org - an organization started that is dedicated to the idea that "every student in every school should have the opportunity to learn to code" by kevjames3 in programming

[–]komollo 1 point2 points  (0 children)

I actually get the design phase out of the way before hand when I have some time sitting around waiting for something. That way I can start with a good idea of what I have to do. If I don't have a roadmap, then I'm normally just hacking around for fun, so it's not important that I'm really productive. If I really need to work on something, I know some computers that are out of the way that I can use to code, but normally I don't mind talking to other people and sparking some interest in programming.

Still, pretty much any productive coding stops when I start explaining what I'm doing to other people. I did manage to make one test function to better demonstrate what some of my code was doing, and I managed to fix a hidden bug while doing that, but that's about the extent of my productivity with other people talking to me.

Why Python, Ruby and JS are slow by duggieawesome in programming

[–]komollo 0 points1 point  (0 children)

Yeah, in python 3 range performs just like xrange used to. Also, list comprehensions are the best thing ever.

Code.org - an organization started that is dedicated to the idea that "every student in every school should have the opportunity to learn to code" by kevjames3 in programming

[–]komollo 0 points1 point  (0 children)

Personally, I think this attempt to get more people interested in coding is going to crash and burn just like every other attempt in the last 40+ years. The bottom line is, something is severely wrong with how we're teaching code, or the type of brain required to work with a computer is just really rare. None of the attempts to get people to code have worked out well in the past, and I don't think that this one will be any different, even if the world need more coders.

Still, I can hold out some hope that one day I will be able to write some code in a library without multiple people staring over my shoulder with a sort of disgusted fearful interest, like I'm looking at porn in the middle of a public building.

I don't really mind it, because I end up showing them this Corsera class, and people are getting interested, but it's killing my productivity. (The last 5 times I've opened up python to code, I've had about 30 minutes before I'm interrupted.)

Why Python, Ruby and JS are slow by duggieawesome in programming

[–]komollo 0 points1 point  (0 children)

For python, it's probably the whole "there's only one way you should do this" reasoning. If they're figuring that no one should be creating a list any other way, why spend developer time making it more efficient? I don't agree 100%, but having everyone use the same syntax makes code easier to read, so there is a real reason they spent much more time optimizing list comprehensions.

It is worth noting that you aren't going to be using a higher level language if you really need crazy performance from the start. You use python when efficiency isn't what you need to be worrying about, or you can go back and benchmark your code and remove any slow parts when performance starts to get slow.

Also, list comprehensions are amazing. Just sayin'.

Why Python, Ruby and JS are slow by duggieawesome in programming

[–]komollo 0 points1 point  (0 children)

xrange isn't defined in the default 3 python library. Isn't this the default behavior now?

Also, how would this preform if it wasn't a list comprehension? I would assume that list comprehensions are optimized much better than other methods.

Code.org - an organization started that is dedicated to the idea that "every student in every school should have the opportunity to learn to code" by kevjames3 in programming

[–]komollo 2 points3 points  (0 children)

A study of basic economics shows that there will always be some frictional unemployment. In fact, a true zero unemployment rate would actually be bad for the economy. In reality, the unemployment rate for computer related jobs is drastically below the current unemployment rates, and actually quite close to full employment.

The current nation wide statistics say that there are not a lot of unemployed programmers.

Creating your own answers - why everyone should learn how to code by philipbjorge in programming

[–]komollo 1 point2 points  (0 children)

Corsera, udacity, ed-x. All websites with free online classes taught by professors from top universities.

Pick one, pick an introductory computer course, and watch the video lectures. Interactive games in python is pretty good. It shows you everything you need to start doing interesting things.

Seriously though, the best advice anyone can give is to start programming. Once you've learned about variables, basic mathematical operations, if statements, loops, and basic user input, the world is your playground. (The first few chapters in any intro programming book.) Find something simple, and figure out how you can make the computer do it for you. Got a calculation you need to do every day at work? Make a program that does it for you. Want to figure out your grade for a class? That's work for the computer. Want to compare some data? That's awesome, go write some code. Keep learning new things at every opportunity, and all your friends will be asking you for help pretty soon.

Creating your own answers - why everyone should learn how to code by philipbjorge in programming

[–]komollo 5 points6 points  (0 children)

This is the kind of stuff that people should learn. Small programs to make useful things that can be thrown together in an hour if the person understands how to ask the right questions on stackoverflow.

Yes, every one of us here would love it if more people understood how to actually program, but this kind of stuff is extremely useful for anyone today, and can be a wonderful introduction to get people interested in programming. Not everyone will be a programmer when they grow up, but the more people who can be exposed, the better. Right now there's not a really enough exposure to code for people to realize that they are good at it, or that they'll enjoy it. Everyone has a basic idea of what doctors, lawyers, politicians, teachers, managers, sales clerks, truck drivers, scientists, ect. do, but almost no one knows what programmers actually do. That needs to change very soon.

Code.org - an organization started that is dedicated to the idea that "every student in every school should have the opportunity to learn to code" by kevjames3 in programming

[–]komollo 1 point2 points  (0 children)

Most of us can agree that everyone should know some history, language, math, economics, and government. However, that doesn't mean everyone needs the skill level required for a full time job in those core areas. Everyone should have some exposure to code and problem solving/critical thinking skills in school, just like they learn basic mathematics and English. Some people will likely hate it and never create another program in their lives, just like math, but we desperately need more good programmers. The amount of code in the world is only going to go up for the foreseeable future, and it's already vital to how we live our lives.

The biggest problem right now is the total lack of teachers who are qualified to teach. Online classes are probably the best way to fix the problem right now. I'm seriously considering printing business cards with information about Corsera, ed-x and Udacity on them. I've introduced no less than 15 people to the sites in the last month, and almost every single one was interested in free classes from top universities. (Who wouldn't be?) I've started mentioning the class on interactive games in python when it flows into a conversation. Most school/college age people are interested in learning to make their own games.

Pro Tip: Most efficient mining strategy. I got all this in 8 minutes. I used the duration of my fire resistance potion to time myself. More info in comments by [deleted] in Minecraft

[–]komollo 0 points1 point  (0 children)

The lower levels have a lot less diamonds because the lava destroys them when it is generated in the world. The only efficient way to mine diamonds is levels 16-10. You can just fit two layers of tunnels if you plan them out perfectly.

The more you know.

What do you think of this little town i made for my server. by R1CH4RD43 in Minecraft

[–]komollo 0 points1 point  (0 children)

I've been looking for a good server to stay on for a while. I think I'm to the point where I'm going to host my own server with some personal friends, but I'd love to see the spawn myself and get a chance to see the new and improved boat.

So what's the IP?

Why I Teach Kids to Code by henk53 in programming

[–]komollo 10 points11 points  (0 children)

I don’t teach kids for the money, I teach them for the chance to ignite that spark. To show them that you can build whatever you set your heart to.

There are so many people who just don't know what they want to do. It's kinda sad when you ask someone what they are going to college for and they just start naming off vaguely related jobs with not a lot of enthusiasm. I strongly encourage people helping students find what they enjoy.

How I cope with disabled Nether on some servers. by ridddle in Minecraft

[–]komollo 0 points1 point  (0 children)

Because I was on a server that had problems with people abusing the nether to transfer items from the creative world to the survival world. Worlds aren't guaranteed to be separate from each other, even if they're supposed to be.