Android... hiding the system UI and other head-bashing ridiculousness.

SueseSuese Posts: 120Member
edited January 2013 in ODK (OUYA Developer Kit)
2 Parts, one specific the other more general:

Part 1: Specific
So, why is it that a BARE BONES Android project needs over 100 lines of code just to hide the system UI?!
How come I can't just hide the system UI without having a bulky XML file describing the layout of the screen?
Why do I need to have a text label and a button in order to hide the UI?
I don't need a Rapid UI development tool, can I make a project without the XML, or at least one that is so bare-bones I will never ever ever have to worry about it again?
Is there a better bare-bones project template that isn't 100 lines of code long?


Part 2:
Why does Android/Eclipse/Java suck so bad?
Why on gods green earth did we make this on Android?
AS3 requires 5 lines of code to write a program, Java projects seem to require massive boilerplates with tons of required and cryptically named event handlers and work-around code, does anyone else see what's wrong with this?

After a few delight-less days, I'm having serious reservations about Android, Eclipse and Java: all seem to be huge bulky hunks of junk. Does nobody else feel this way?
Post edited by Suese on
TheSuese.com - Elite Developer Backer

Comments

  • noctnoct Posts: 122Member
    edited January 2013
    Hiding the title bar should be one line in the manifest:
    <activity android:theme="@android:style/Theme.NoTitleBar.Fullscreen"...>
    Post edited by noct on
  • SueseSuese Posts: 120Member
    Thanks. When I created a new blank android project it came with 2 files filled with boilerplate code that had the sole purpose of removing the UI.

    I've calmed down a bit and worked out some of the bugs with the dev chain. Still horrible, bloated and slow but at least I have something semi-reliable now.
    TheSuese.com - Elite Developer Backer
  • MagnesusMagnesus Posts: 304Member
    You can also do that with one line of code (outside of Manifest) you now. Next time calm down a little before you post. :) Eclipse is fine for me, what system are you using? It was slow on Java 1.6, you should really consider installing 1.7 for Eclipse (at least on Linux).

  • hypercanestudioshypercanestudios Posts: 126Member
    As an alternative, they could have based this on iOS and Apple would have decided that users don't need to hide the system menu. Oh wait, iOS isn't open source...

    There's a reason why this is based on Android - the same reason why we're putting Android in car dashboards, SLR cameras, wrist-watches and DVD players.
  • Jack_McslayJack_Mcslay Posts: 100Member
    Why would you want to use actionscript? It's unoptimized, proprietary, and most likely on it's deathbed. Java provides way better porformance and optimization possibilities that ActionScript could ever dream to accomplish.
  • Gufino2Gufino2 Posts: 3Member
    "
    Suese said:


    AS3 requires 5 lines of code to write a program, Java projects seem to require massive boilerplates with tons of required and cryptically named event handlers and work-around code, does anyone else see what's wrong with this?

    Well, welcome to the world of REAL programming :) No offense intended, but judging from what you wrote it looks like you still need to improve your programming skills before you can take up a project like an android game. Anyway, I think you'll find peoples willing to help if you just stay calm when you ask something :)

    "criptically named event handlers"? "work-around code"? "2 files filled with boilerplate code that had the sole purpose of removing the UI"? I don't think I see any of this when I create a new android project. Can you please post some example?
  • SueseSuese Posts: 120Member
    Ha! I'm a veteran programmer, I have over 15 years of professional web development experience. I just prefer things that are light weight and not memory-busting. I find Eclipse + Java are just these memory-consuming monsters, it takes my computer over 10 seconds to connect to the android device and run this massively memory-destroying debugger. Everything about it makes me think computers were set back 20 years. I have a 386 that can perform similar types of tasks faster than these Java monstrosities.

    In my opinion there is no sense of practicality with Java, just forced conventions and a really painfully slow virtual machine.

    I would like alternatives but I'm learning more about the Android platform and it seems it is built on layers upon layers of Java code. It's a bit disappointing to me, I'm used to having my code run quickly and development environment running properly.

    If this is what you call 'The real world of programming', then the real world is a joke and is completely outperformed by my 'fantasy world of programming'.

    TheSuese.com - Elite Developer Backer
  • SueseSuese Posts: 120Member
    Oh p.s. Flex SDK is open source, and AS3 runs quickly if you strictly type everything. I'm usually quite tool-chain agnostic. It's not like I am fanatical about AS3 or anything, it's just a comparison.
    TheSuese.com - Elite Developer Backer
  • SueseSuese Posts: 120Member
    I realized the boilerplate code that removed the UI was some god-forsaken code template generator that I have completely replaced with a truly bare-bones project template. There was literally over 100 lines of code in what they called 'bare bones', that kind of thinking just drives me insane.

    Also the Java naming conventions are cryptic, I'm not a fan of CamelCase, and it really makes it seem they've tried their hardest to make non-english identifiers that don't explain themselves. For example they might write RabbitMkJmp() where I would write a much more readable make_rabbit_jump() apparently Java won't let me name objects my own way, they MUST begin with a capital letter. THAT kind of philosiphy-forcing drives me insane the most!

    Perhaps I'm just comfortable with the various project templates and conventions that I've built over the years and moving over to Java and the Java mentality is way out of my comfort zone. Perhaps it will push me to expand my skills but for now it's making me want to rip my hair out. It all seems just so illogical to me.
    TheSuese.com - Elite Developer Backer
  • Jack_McslayJack_Mcslay Posts: 100Member
    Web development is in a whole different category than of game programming. It is based on well-known standards and performs a limited set of tasks, almost everything is handled by the browser. Game development on the other hand, relies that the developer will provide his own frameworks for graphics, sound, networking, data storage and such. You will still run into all those issues whatever language you choose. If you can't handle editing XML files by hand, I'm afraid I have to agree you are not up to the challenge of developing a game.

    Java is anything but a slow virtual machine. A number of serious games were made on in, most notably Minecraft, as well as being frequently used for large mathematical calculations.
  • SueseSuese Posts: 120Member
    When did I say I wasn't up to editing XML files by hand? I've made lots of games in the past using As3, C++, Allegro, OpenGL, SDL, etc., so don't think I'm some amateur just because my professional career was in web development.
    TheSuese.com - Elite Developer Backer
  • SueseSuese Posts: 120Member
    I ran a purely computational benchmark just to prove to myself that Java was a clunky piece of garbage and Java runs 100-1,000 times slower than similar C++ code when running nothing but purely computational tasks. So this is not just in my head and it's not a matter of being a bad programmer.
    TheSuese.com - Elite Developer Backer
  • Volcanic-PenguinVolcanic-Penguin Posts: 90Member
    Hi!

    I'm making a 3D unity game for android, to try out making a game in 3d and making a game for android, and so I'll probably put it on OUYA as well since it'll most likely be very easy to port. But I definitely prefer Flash and AS3 and will be waiting to make any considerable investment in OUYA development until Adobe gets around to making an OUYA export feature. ;)

    Just thought I'd share since you mentioned AS3 lol.
  • Jack_McslayJack_Mcslay Posts: 100Member
    Suese said:

    When did I say I wasn't up to editing XML files by hand? I've made lots of games in the past using As3, C++, Allegro, OpenGL, SDL, etc., so don't think I'm some amateur just because my professional career was in web development.

    I'm confused. Why do you hate camelcase so much if every single one of those uses it?

    As for Java code running slow, you're aware that the device simulator runs through an ARM emulator, right?
  • MagnesusMagnesus Posts: 304Member
    edited January 2013
    Java can actually be as fast as C++ (watch for garbage collector though). You are running it in a simulator, which is slow because it uses an ARM emulator. I think your need to get to the job with a fresh mind - I'm also a web developer so I know there is a lot of difference and a learning curve when switching to sth like Android development but if you are a programmer with so long experience you should be able to switch languages, IDEs, new ways of coding as easily as gloves. Keep a fresh mind and keep calm. :)
    PS. You must've never wrote applications for Windows (win32) - then you would know what bloat is. :D
    As for the XML file - you are web developer, you should be used to much larger and more complicated XMLs (or HTMLs if you are not using xHTML).
    Post edited by Magnesus on

  • exXelloexXello Posts: 4Member
    Suese why dont you code in c++ ? Or is NDK not working for Ouya ? Well of course you have to write a bit of java code to include it .
  • WildsWilds Posts: 78Member
    Suese said:

    When did I say I wasn't up to editing XML files by hand? I've made lots of games in the past using As3, C++, Allegro, OpenGL, SDL, etc., so don't think I'm some amateur just because my professional career was in web development.

    Check bencmarks on the internet for correct comparisations.
  • SueseSuese Posts: 120Member
    edited January 2013
    Hehe. These help calm my nerves a bit. http://harmful.cat-v.org/software/java
    I'm finding a great deal of 'real programmers' dislike Java as much as me and for all the same reasons. I don't know why you are all attached to it, but it sucks deluxe.

    @exXello Thanks. I'm definitely going to try the NDK today.
    Post edited by Suese on
    TheSuese.com - Elite Developer Backer
  • DrOhReallyDrOhReally Posts: 1Member
    Java isn't as bad as you make it sound, actionscript on the other hand... ew. Mind you I got used to XNA where a lot of stuff is done for you lol so it can be frustrating at times. Hang in there man, we want to see your games :)
  • Jack_McslayJack_Mcslay Posts: 100Member
    Suese said:

    Hehe. These help calm my nerves a bit. http://harmful.cat-v.org/software/java
    I'm finding a great deal of 'real programmers' dislike Java as much as me and for all the same reasons. I don't know why you are all attached to it, but it sucks deluxe.

    @exXello Thanks. I'm definitely going to try the NDK today.

    Those people are the kind of programmer quick to bash anything designed with a focus on OOP. Linus Torvalds literally said once that anyone who uses C++ is an idiot.

  • SueseSuese Posts: 120Member
    edited January 2013
    I prefer the focus be on practicality. I'm more of a pragmatist when it comes to programming. I like an SDKs purpose to be to make coding simpler and faster.

    In defense of Java+Eclipse+JTest -I am a lone wolf.

    I can program with my own conventions and designs and I can do a bad or good job coding and nobody really notices one way or the other unless the game is buggy. I can read my own code like I can read English and I'm used to having it MY way. Sometimes that can lead to bad group habits, but as a lone wolf I really don't care about group habits.

    Also, I got AIR up and running. It's fast and runs Stage3D and responds to some game pad events right out of the box. Don't shoot me, like I said I'm a pragmatist and I just really found Java + Eclipse set up not my style at all.

    Here's the skinny
    http://forums.ouya.tv/discussion/158/flashdevelop-adobe-air-i-can-breathe
    Post edited by Suese on
    TheSuese.com - Elite Developer Backer
  • SardtokSardtok Posts: 11Member
    Suese, you might also want to look into Marmalade (there are also other C++ mobile development SDKs, but Marmalade is quite popular). It might not work out of the box with the OUYA, though, but it does run on Android (and several other mobile OSes).
  • SueseSuese Posts: 120Member
    @Sartok Thanks.

    The downloading process for marmalade was the most unpleasant experience ever. They wanted me to register and give them detailed information when all I wanted was a quick trial only to find out it doesn't work on Linux. Buncha boneheads.
    TheSuese.com - Elite Developer Backer
  • Gufino2Gufino2 Posts: 3Member
    Hey Suese, I'm sorry for thinking you were a programming newbie and sort of "bashing" you. Maybe I just misunderstood the tone of your question :) Anyway, if you don't like Java at all but you're comfortable with C++, I think you could develop a completely native app (well, this should be confirmed by someone who has the dev console, but since native code is part of the android standard, I think it should work).
  • bennygoldbennygold Posts: 18Member
    @Suese you are my favourite. In your OP was exactly how I felt about it all a year ago. I was tempted to  go mono back then, and even now I think I should have.
  • DelpeeDelpee Posts: 120Member
    Suese said:
    Hehe. These help calm my nerves a bit. http://harmful.cat-v.org/software/java I'm finding a great deal of 'real programmers' dislike Java as much as me and for all the same reasons. I don't know why you are all attached to it, but it sucks deluxe. @exXello Thanks. I'm definitely going to try the NDK today.
    From the same website that brought you Object Oriented Programming Sucks and the widely acclaimed Operating Systems Suck. But wait, there´s more, if you order now, you´ll get XML Sucks for free!
    ~ Yuri van Geffen (Portfolio)
  • theaceofthespadetheaceofthespade Posts: 21Member
    edited January 2013
    As programmers, I think we can all agree that if someone is not doing something the same way we are, doesn't like a method that we like, or worst of all, outright disagrees with us, they are clearly a total noob who should learn how to program.
    Post edited by theaceofthespade on
  • mjoynermjoyner Posts: 168Member
    About the only rant against a language that I liked is the one against PHP.
  • Jack_McslayJack_Mcslay Posts: 100Member
    As programmers, I think we can all agree that if someone is not doing something the same way we are, doesn't like a method that we like, or worst of all, outright disagrees with us, they are clearly a total noob who should learn how to program.
    This. 2x if said person is an open source zealot
Sign In or Register to comment.