Overclock.net › Forums › Industry News › Software News › [Ars]Mono for Android framework lets C# developers tame the Droid
New Posts  All Forums:Forum Nav:

[Ars]Mono for Android framework lets C# developers tame the Droid - Page 3

post #21 of 30
Quote:
Originally Posted by lordikon View Post
Depends on what type of programmer you are. There is no blanket statement that says "All good programmers use X".

As a game developer I rarely get to touch C# other than for tools, C++ is pretty much the gaming industry standard for AAA titles, java/flash are more common for smaller games.

I happen to know C# because I develop some stuff in XNA, however I can say a major of my gaming industry co-workers have never touched C#, and that doesn't make them bad programmers.

The requirement for being a great programmer is language-agnostic. To me a great programmer can solve problems cleanly, concisely, and correctly, can write readable code that is so clean that most other programmers can look at it and quickly know what it's meant to do, write it in a way that will be error-free or at least warn the programmer of errors, and make the code extensible so that it can be expanded upon in the future rather than be very specific and has to be rewritten as soon as something changes.
I explained my sarcasm a couple posts above.

Also, can you explain why this doesn't work? I'd like to think of myself as a great programmer, but this isn't making sense. I'm trying to get a random number but it's returning 4 every time.

Code:
#include <iostream>
using namespace std;

int val = 4;

int randNumber()
{
   int randValue = rand() % 10 + 1; 
   return val;
}

int main()
{
 cout << randNumber();
 return 0;
}
post #22 of 30
Quote:
Originally Posted by floatingDivs View Post
I explained my sarcasm a couple posts above.

Also, can you explain why this doesn't work? I'd like to think of myself as a great programmer, but this isn't making sense. I'm trying to get a random number but it's returning 4 every time.

Code:
#include <iostream>
using namespace std;

int val = 4;

int randNumber()
{
   int randValue = rand() % 10 + 1; 
   return val;
}

int main()
{
 cout << randNumber();
 return 0;
}
^^^ This one is obviously sarcasm. Sorry I missed it in your previous post, internet isn't the easiest place to convey sarcasm.

But if it were some newb, the compiler would likely give a warning for the 'variable assigned to but not used' for 'randValue'.
Foldatron
(17 items)
 
Mat
(10 items)
 
Work iMac
(9 items)
 
CPUMotherboardGraphicsGraphics
i7 950 EVGA x58 3-way SLI EVGA GTX 660ti GTX 275 
RAMHard DriveHard DriveHard Drive
3x2GB Corsair Dominator DDR3-1600 80GB Intel X25-M SSD 2TB WD Black 150GB WD Raptor 
Hard DriveOSMonitorKeyboard
2x 150GB WD V-raptor in RAID0 Win7 Home 64-bit OEM 55" LED 120hz 1080p Vizio MS Natural Ergonomic Keyboard 4000 
PowerCase
750W PC P&C Silencer CoolerMaster 690 
CPUGraphicsRAMHard Drive
Intel Core i5 2500S AMD 6770M 8GB (2x4GB) at 1333Mhz 1TB, 7200 rpm 
Optical DriveOSMonitorKeyboard
LG 8X Dual-Layer "SuperDrive" OS X Lion 27" iMac screen Mac wireless keyboard 
Mouse
Mac wireless mouse 
CPUGraphicsRAMHard Drive
i7-2600K AMD 6970M 1GB 16GB PC3-10600 DDR3 1TB 7200rpm 
Hard DriveOptical DriveOSMonitor
256GB SSD 8x DL "SuperDrive" OS X 10.7 Lion 27" 2560x1440 iMac display 
Monitor
27" Apple thunderbolt display 
  hide details  
Reply
Foldatron
(17 items)
 
Mat
(10 items)
 
Work iMac
(9 items)
 
CPUMotherboardGraphicsGraphics
i7 950 EVGA x58 3-way SLI EVGA GTX 660ti GTX 275 
RAMHard DriveHard DriveHard Drive
3x2GB Corsair Dominator DDR3-1600 80GB Intel X25-M SSD 2TB WD Black 150GB WD Raptor 
Hard DriveOSMonitorKeyboard
2x 150GB WD V-raptor in RAID0 Win7 Home 64-bit OEM 55" LED 120hz 1080p Vizio MS Natural Ergonomic Keyboard 4000 
PowerCase
750W PC P&C Silencer CoolerMaster 690 
CPUGraphicsRAMHard Drive
Intel Core i5 2500S AMD 6770M 8GB (2x4GB) at 1333Mhz 1TB, 7200 rpm 
Optical DriveOSMonitorKeyboard
LG 8X Dual-Layer "SuperDrive" OS X Lion 27" iMac screen Mac wireless keyboard 
Mouse
Mac wireless mouse 
CPUGraphicsRAMHard Drive
i7-2600K AMD 6970M 1GB 16GB PC3-10600 DDR3 1TB 7200rpm 
Hard DriveOptical DriveOSMonitor
256GB SSD 8x DL "SuperDrive" OS X 10.7 Lion 27" 2560x1440 iMac display 
Monitor
27" Apple thunderbolt display 
  hide details  
Reply
post #23 of 30
Quote:
Originally Posted by lordikon View Post
The requirement for being a great programmer is language-agnostic. To me a great programmer can solve problems cleanly, concisely, and correctly, can write readable code that is so clean that most other programmers can look at it and quickly know what it's meant to do, write it in a way that will be error-free or at least warn the programmer of errors, and make the code extensible so that it can be expanded upon in the future rather than be very specific and has to be rewritten as soon as something changes.
This guy.

Quote:
Lastly, how do you judge "amazing" programmers? I judge them by how well they make money, because those "amazing" programmers who figure out ways to solve ridiculous algorithms that won't ever bring in any cash don't do much for me. Their obscure solutions don't interest me. My boss, on the other hand, is one of my idols. In his prime, he was making well north of a quarter million dollars a year and has now retired (about 8 years ago at age 35...my guess?) to work at a major university creating applications for the entire uni. That's #winning in my book.

Plus, those "amazing" programmers who solve these tough solutions rarely know how to speak in public or even somewhat translate their solutions into "human speak", which is probably a very important part of the job at a corporation.
Not this guy. We're talking about great programmers, not public speakers or people who can run a business.

Making applications for an entire university does not impress me, they hire college students at my school to do this all the time.
chevador
(13 items)
 
chevtop
(6 items)
 
 
CPUGraphicsRAMHard Drive
Intel Core i5 2.5ghz (Ivy Bridge) Intel HD4000 8GB 1600MHz DDR3 128GB SSD 
OSMonitor
OS X 10.8 Mountain Lion 13" 1280x800 
  hide details  
Reply
chevador
(13 items)
 
chevtop
(6 items)
 
 
CPUGraphicsRAMHard Drive
Intel Core i5 2.5ghz (Ivy Bridge) Intel HD4000 8GB 1600MHz DDR3 128GB SSD 
OSMonitor
OS X 10.8 Mountain Lion 13" 1280x800 
  hide details  
Reply
post #24 of 30
Quote:
Originally Posted by ChvyVele View Post
This guy.



Not this guy. We're talking about great programmers, not public speakers or people who can run a business.

Making applications for an entire university does not impress me, they hire college students at my school to do this all the time.
Well, you're certainly not going to move up in the corporate world as a programmer if you can't relate to the "normal" (read: non-programming) people. That's why I'm taking speech and acting classes. I'd rather be a "good" programmer capable of publicly speaking about an application/software than a "great" programmer unable to even remotely describe the software/application in an understandable fashion.

Quote:
Originally Posted by lordikon View Post
^^^ This one is obviously sarcasm. Sorry I missed it in your previous post, internet isn't the easiest place to convey sarcasm.

But if it were some newb, the compiler would likely give a warning for the 'variable assigned to but not used' for 'randValue'.
Yeah, I was toying with ya on that one...
Edited by floatingDivs - 4/11/11 at 9:56am
post #25 of 30
Quote:
Originally Posted by floatingDivs View Post
Well, you're certainly not going to move up in the corporate world as a programmer if you can't relate to the "normal" (read: non-programming) people. That's why I'm taking speech and acting classes. I'd rather be a "good" programmer capable of publicly speaking about an application/software than a "great" programmer unable to even remotely describe the software/application in an understandable fashion.
I do agree with you, which is why my liberal arts concentration is in communication. I'm just saying that you can be an amazing programmer without being a people-person. You may not be able to explain your solutions or present them to a group of people, but you still have the ability to solve any problem thrown your way, which is the basis of programming skill when it comes down to it (in my opinion).
chevador
(13 items)
 
chevtop
(6 items)
 
 
CPUGraphicsRAMHard Drive
Intel Core i5 2.5ghz (Ivy Bridge) Intel HD4000 8GB 1600MHz DDR3 128GB SSD 
OSMonitor
OS X 10.8 Mountain Lion 13" 1280x800 
  hide details  
Reply
chevador
(13 items)
 
chevtop
(6 items)
 
 
CPUGraphicsRAMHard Drive
Intel Core i5 2.5ghz (Ivy Bridge) Intel HD4000 8GB 1600MHz DDR3 128GB SSD 
OSMonitor
OS X 10.8 Mountain Lion 13" 1280x800 
  hide details  
Reply
post #26 of 30
Notice that these definitions and ideals only apply insofar that the person is in the "corporate world". Some of us *ahem*... plan on becoming academics where "great programmer" doesn't mean much, and logical reasoning is everything. Sure, software is written, but it need not be cleverly implemented so long as it represents the logical structure being examined. This is why I don't think being a "great programmer" necessarily makes you great problem-solver. You may be able to represent a system given to you, but that doesn't mean you can design one on your own.
Edited by Biokinetica - 4/14/11 at 1:03pm
Chevalier
(13 items)
 
  
CPUMotherboardGraphicsRAM
Phenom II X6 1090T GA-890FXA-UD5 Rev. 2.0 Sapphire Radeon HD 5970 2GB Mushkin Enhanced Ridgeback 4GB 
Hard DriveOSMonitorKeyboard
OCZ Vertex 2 60 GB & WD Caviar 500 GB 7 Ultimate ASUS VW246H Sidewinder x6 
PowerCaseMouse
XFX 750W HAF X Sidewinder X8 
  hide details  
Reply
Chevalier
(13 items)
 
  
CPUMotherboardGraphicsRAM
Phenom II X6 1090T GA-890FXA-UD5 Rev. 2.0 Sapphire Radeon HD 5970 2GB Mushkin Enhanced Ridgeback 4GB 
Hard DriveOSMonitorKeyboard
OCZ Vertex 2 60 GB & WD Caviar 500 GB 7 Ultimate ASUS VW246H Sidewinder x6 
PowerCaseMouse
XFX 750W HAF X Sidewinder X8 
  hide details  
Reply
post #27 of 30
Quote:
Originally Posted by dham View Post
Objective-C is what the Cocoa and Cocoa touch frameworks are written in. Cocoa is the API for MacOSX. It's kind of like the WinAPI for Windows. It's what allows you to develop for MacOSX and iOS. Objective-C like C++ was written to extend C. C++ just does it a lot better and the language is much more beautiful.

Objective-C does have some cool features such as the messaging. This makes a lot more sense in GUI applications than "listeners" do. If your not familiar with it read up on messages in Objective-C. Java and C# rely on listeners in gui and web based applications.

It's a shame Objective-C was ruined by its horrid syntax.

BTW you can develop iOS applications(geared towards games) in C++ using visual studio and DragonFire SDK. I think Unity allows this also.

It's still a easier to develop gui application in XCode.
XCode is the least intuitive IDE I've ever come across, same for the project structure and the syntax. Messages do make sense, but listeners roots go back to traditional MVC patterns and are second nature to many people, including me.
    
CPUMotherboardGraphicsRAM
9 Pentium 4 HT's @ 2.8 GHz Foxconn LS-36' s OB 4 GB server, 2 GB nodes 
Hard DriveOSMonitorKeyboard
40 GB WD Fedora 10 24" LG LG wireless 
PowerCaseMouseMouse Pad
9 Antec 350's Wood, bars, rails..... you'll see. Microsoft IR UCF Golden Nights 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
9 Pentium 4 HT's @ 2.8 GHz Foxconn LS-36' s OB 4 GB server, 2 GB nodes 
Hard DriveOSMonitorKeyboard
40 GB WD Fedora 10 24" LG LG wireless 
PowerCaseMouseMouse Pad
9 Antec 350's Wood, bars, rails..... you'll see. Microsoft IR UCF Golden Nights 
  hide details  
Reply
post #28 of 30
Quote:
Originally Posted by Biokinetica View Post
Notice that these definitions and ideals only apply insofar that the person is in the "corporate world". Some of us *ahem*... plan on becoming academics where "great programmer" doesn't mean much, and logical reasoning is everything. Sure, software is written, but it need not be cleverly implemented so long as it represents the logical structure being examined. This is why I don't think being a "great programmer" necessarily makes you great problem-solver. You may be able to represent a system given to you, but that doesn't mean you can design one on your own.
You realize the corporate world also makes a distinction between a coder and an engineer?
    
CPUMotherboardGraphicsRAM
9 Pentium 4 HT's @ 2.8 GHz Foxconn LS-36' s OB 4 GB server, 2 GB nodes 
Hard DriveOSMonitorKeyboard
40 GB WD Fedora 10 24" LG LG wireless 
PowerCaseMouseMouse Pad
9 Antec 350's Wood, bars, rails..... you'll see. Microsoft IR UCF Golden Nights 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
9 Pentium 4 HT's @ 2.8 GHz Foxconn LS-36' s OB 4 GB server, 2 GB nodes 
Hard DriveOSMonitorKeyboard
40 GB WD Fedora 10 24" LG LG wireless 
PowerCaseMouseMouse Pad
9 Antec 350's Wood, bars, rails..... you'll see. Microsoft IR UCF Golden Nights 
  hide details  
Reply
post #29 of 30
Quote:
Originally Posted by floatingDivs View Post
Well, you're certainly not going to move up in the corporate world as a programmer if you can't relate to the "normal" (read: non-programming) people. That's why I'm taking speech and acting classes. I'd rather be a "good" programmer capable of publicly speaking about an application/software than a "great" programmer unable to even remotely describe the software/application in an understandable fashion.



Yeah, I was toying with ya on that one...
Got news for you, few coders ever see a potential client.
    
CPUMotherboardGraphicsRAM
9 Pentium 4 HT's @ 2.8 GHz Foxconn LS-36' s OB 4 GB server, 2 GB nodes 
Hard DriveOSMonitorKeyboard
40 GB WD Fedora 10 24" LG LG wireless 
PowerCaseMouseMouse Pad
9 Antec 350's Wood, bars, rails..... you'll see. Microsoft IR UCF Golden Nights 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
9 Pentium 4 HT's @ 2.8 GHz Foxconn LS-36' s OB 4 GB server, 2 GB nodes 
Hard DriveOSMonitorKeyboard
40 GB WD Fedora 10 24" LG LG wireless 
PowerCaseMouseMouse Pad
9 Antec 350's Wood, bars, rails..... you'll see. Microsoft IR UCF Golden Nights 
  hide details  
Reply
post #30 of 30
Just don't go asking pure C++ programmers what a lambda is and you'll be fine.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Software News
Overclock.net › Forums › Industry News › Software News › [Ars]Mono for Android framework lets C# developers tame the Droid