Re: [android-beginners] Advice For First (Simple?) Non-Tutorial Project

2010-05-05 Thread Daniel Favela
Greetings again, fellow beginners!

I looked through status.net and it provoked a question.  I do not need
something too specialized; in fact, I don't really have the server to host
the suggested microblogging service on.  Instead, does Android have the
capability to do something with a public medium instead, as described below?

--- Affecting the Counter ---
1. User makes a selection to add or remove themself to/from the counter.
2. The app posts something to a public medium (example: twitter) account
that indicates an addition or a removal.
3. The app updates its counter according to the user's addition/subtraction.
4. The app looks up the public counter (below).

--- Looking Up the Counter ---
1. The app looks up the twitter account.  For simplicity, let us say that
this occurs when a user adds or removes themselves (above).
2. The app reads entries from some date/time to present date/time; entries
contain text that indicate additions/subtractions to the count.
3. The app reads/parses these entries.
4. The app updates its counter according to the entries' values.

What I want to know: is all that possible on the Android?  You don't have to
give me details if you don't feel like it, but any
direction/comments/ideas/pitfalls are welcome.

Thank you for reading, and have a great day!

-Danny



On Sat, May 1, 2010 at 3:42 PM, ubuntuexplorer ubuntuexplo...@gmail.comwrote:

 Dear Mark,
 Thanks for the answer. As I understand, it seems that learning will be
 simpler if I make up an app. idea and then try to learn what is required to
 build it.

 I will try to get the books suggested if I need further info.

 Regards,
 UE.


 On Sat, May 1, 2010 at 11:30 PM, Mark Murphy mmur...@commonsware.comwrote:

 Ubuntu Explorer wrote:
  I have more or less the same question. The amount of detail in the API
  is overwhelming for me to choose what is really required for my app. Are
  there specific areas we can focus on that can help us ramp up quickly.

 That is impossible to answer in the abstract. A 3D first-person shooter
 is very different from a PDF viewer, which is very different from a
 social networking client, which is very different from a tip calculator.
 The specific areas [you] can focus on that can help [you] ramp up
 quickly will vary by what you are building.

 At the risk of sounding self-serving, if you find the documentation
 overwhelming, perhaps you need different documentation:

 http://wiki.andmob.org/books

 (in the interests of full disclosure, I wrote some of those)

  On Sat, May 1, 2010 at 4:27 PM, Daniel Favela dfav...@gmail.com
  First question: I've done the Hello World and notepad tutorials, as
  well as run through the quick tutorial
  http://www.youtube.com/watch?v=I6ObTqIiYfEon youtube by Dan
  Morril.  I've also read a bit of the Android fundamentals
  materials.  Is this enough experience to make an application like
  the one I'll describe below?
 
  If not, what do you think I should read or try next?  If so,
 
  The application I have in mind will be a counter triggered by
  users.  A user will add themselves to the count, remove themselves
  from the count, and view the count.
 
  When a user adds or removes themself to the count...
  - if possible, this will update the count on other instances for
  other users/devices
 
  That's my first step for now.  The UI will be a ListView showing the
  counts that users have added themselves to (once I create the means
  to have one count, I will easily be able to scale the app to have
  n counts).  There will be a button to add and remove the user.
 
  Sounds reasonable, right?  Please let me know if this sounds
  difficult, especially where the multi-device communication (in
  updating the counter) is concerned.  Know of a library that I'll
  have to use, or have some general advice for this?  Tell me! :)

 IMHO, you're looking at your problem backwards.

 Your application requires a server, from your description. Focus on
 getting the server right first:

 -- how are you planning on sending data to the server? (HTTP via a
 REST-style API? XMPP? SMTP? something else?)

 -- where and how are you storing your counts? (SQLite? MySQL? Oracle?
 Flat file? memcached? Redis? something else?)

 -- how are you determining who sees what count? (everybody sees
 everybody's? something else?)

 -- how are you planning on distributing updates from the server?
 (polling by the clients? WebSockets with Comet? SMS? something else?)

 -- what data format will you be using for all of this? (XML? JSON? YAML?
 binary payloads via Protocol Buffers? binary payloads via Thrift?
 something else?)

 The only part of Android that really comes into play when thinking about
 your server are the communication protocols and payloads to/from the
 server. In the end, Android can handle just about anything, but there is
 more work involved with some compared to others. 

[android-beginners] Advice For First (Simple?) Non-Tutorial Project

2010-05-01 Thread Daniel Favela
Greetings, fellow beginners!

First question: I've done the Hello World and notepad tutorials, as well as
run through the quick tutorial http://www.youtube.com/watch?v=I6ObTqIiYfEon
youtube by Dan Morril.  I've also read a bit of the Android fundamentals
materials.  Is this enough experience to make an application like the one
I'll describe below?

If not, what do you think I should read or try next?  If so,

The application I have in mind will be a counter triggered by users.  A user
will add themselves to the count, remove themselves from the count, and view
the count.

When a user adds or removes themself to the count...
- if possible, this will update the count on other instances for other
users/devices

That's my first step for now.  The UI will be a ListView showing the counts
that users have added themselves to (once I create the means to have one
count, I will easily be able to scale the app to have n counts).  There
will be a button to add and remove the user.

Sounds reasonable, right?  Please let me know if this sounds difficult,
especially where the multi-device communication (in updating the counter) is
concerned.  Know of a library that I'll have to use, or have some general
advice for this?  Tell me! :)

Thank you for reading!

-Danny

-- 
You received this message because you are subscribed to the Google
Groups Android Beginners group.

NEW! Try asking and tagging your question on Stack Overflow at
http://stackoverflow.com/questions/tagged/android

To unsubscribe from this group, send email to
android-beginners+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-beginners?hl=en


Re: [android-beginners] Advice For First (Simple?) Non-Tutorial Project

2010-05-01 Thread Ubuntu Explorer
Dear fellow beginners,
I have more or less the same question. The amount of detail in the API is
overwhelming for me to choose what is really required for my app. Are there
specific areas we can focus on that can help us ramp up quickly.


Regards,
UE.

On Sat, May 1, 2010 at 4:27 PM, Daniel Favela dfav...@gmail.com wrote:

 Greetings, fellow beginners!

 First question: I've done the Hello World and notepad tutorials, as well as
 run through the quick tutorial
 http://www.youtube.com/watch?v=I6ObTqIiYfEon youtube by Dan Morril.
 I've also read a bit of the Android fundamentals materials.  Is this enough
 experience to make an application like the one I'll describe below?

 If not, what do you think I should read or try next?  If so,

 The application I have in mind will be a counter triggered by users.  A
 user will add themselves to the count, remove themselves from the count, and
 view the count.

 When a user adds or removes themself to the count...
 - if possible, this will update the count on other instances for other
 users/devices

 That's my first step for now.  The UI will be a ListView showing the counts
 that users have added themselves to (once I create the means to have one
 count, I will easily be able to scale the app to have n counts).  There
 will be a button to add and remove the user.

 Sounds reasonable, right?  Please let me know if this sounds difficult,
 especially where the multi-device communication (in updating the counter) is
 concerned.  Know of a library that I'll have to use, or have some general
 advice for this?  Tell me! :)

 Thank you for reading!

 -Danny

 --
 You received this message because you are subscribed to the Google
 Groups Android Beginners group.

 NEW! Try asking and tagging your question on Stack Overflow at
 http://stackoverflow.com/questions/tagged/android

 To unsubscribe from this group, send email to
 android-beginners+unsubscr...@googlegroups.comandroid-beginners%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/android-beginners?hl=en


-- 
You received this message because you are subscribed to the Google
Groups Android Beginners group.

NEW! Try asking and tagging your question on Stack Overflow at
http://stackoverflow.com/questions/tagged/android

To unsubscribe from this group, send email to
android-beginners+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-beginners?hl=en


Re: [android-beginners] Advice For First (Simple?) Non-Tutorial Project

2010-05-01 Thread Mark Murphy
Ubuntu Explorer wrote:
 I have more or less the same question. The amount of detail in the API
 is overwhelming for me to choose what is really required for my app. Are
 there specific areas we can focus on that can help us ramp up quickly.

That is impossible to answer in the abstract. A 3D first-person shooter
is very different from a PDF viewer, which is very different from a
social networking client, which is very different from a tip calculator.
The specific areas [you] can focus on that can help [you] ramp up
quickly will vary by what you are building.

At the risk of sounding self-serving, if you find the documentation
overwhelming, perhaps you need different documentation:

http://wiki.andmob.org/books

(in the interests of full disclosure, I wrote some of those)

 On Sat, May 1, 2010 at 4:27 PM, Daniel Favela dfav...@gmail.com
 First question: I've done the Hello World and notepad tutorials, as
 well as run through the quick tutorial
 http://www.youtube.com/watch?v=I6ObTqIiYfEon youtube by Dan
 Morril.  I've also read a bit of the Android fundamentals
 materials.  Is this enough experience to make an application like
 the one I'll describe below?
  
 If not, what do you think I should read or try next?  If so,
  
 The application I have in mind will be a counter triggered by
 users.  A user will add themselves to the count, remove themselves
 from the count, and view the count. 
  
 When a user adds or removes themself to the count...
 - if possible, this will update the count on other instances for
 other users/devices
  
 That's my first step for now.  The UI will be a ListView showing the
 counts that users have added themselves to (once I create the means
 to have one count, I will easily be able to scale the app to have
 n counts).  There will be a button to add and remove the user.
  
 Sounds reasonable, right?  Please let me know if this sounds
 difficult, especially where the multi-device communication (in
 updating the counter) is concerned.  Know of a library that I'll
 have to use, or have some general advice for this?  Tell me! :)

IMHO, you're looking at your problem backwards.

Your application requires a server, from your description. Focus on
getting the server right first:

-- how are you planning on sending data to the server? (HTTP via a
REST-style API? XMPP? SMTP? something else?)

-- where and how are you storing your counts? (SQLite? MySQL? Oracle?
Flat file? memcached? Redis? something else?)

-- how are you determining who sees what count? (everybody sees
everybody's? something else?)

-- how are you planning on distributing updates from the server?
(polling by the clients? WebSockets with Comet? SMS? something else?)

-- what data format will you be using for all of this? (XML? JSON? YAML?
binary payloads via Protocol Buffers? binary payloads via Thrift?
something else?)

The only part of Android that really comes into play when thinking about
your server are the communication protocols and payloads to/from the
server. In the end, Android can handle just about anything, but there is
more work involved with some compared to others. However, it may be that
you are still better off choosing something that you're already
comfortable with, even if it makes the Android side a bit more complex,
just to make your server work simpler.

Once you have the server more or less working -- perhaps via a client
technology you are already comfortable with -- then tackle the Android
client. As you say, the client side should not be terribly difficult,
assuming you have a well-designed server.

IMHO, the majority of your complexity is with the server. The only
reason that would not be the case is if you're going to try to graft
your design onto an existing engine (e.g., you'll use the status.net
microblogging server and distribute count data via tweets).

-- 
Mark Murphy (a Commons Guy)
http://commonsware.com | http://github.com/commonsguy
http://commonsware.com/blog | http://twitter.com/commonsguy

_Beginning Android 2_ from Apress Now Available!

-- 
You received this message because you are subscribed to the Google
Groups Android Beginners group.

NEW! Try asking and tagging your question on Stack Overflow at
http://stackoverflow.com/questions/tagged/android

To unsubscribe from this group, send email to
android-beginners+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-beginners?hl=en


Re: [android-beginners] Advice For First (Simple?) Non-Tutorial Project

2010-05-01 Thread Daniel Favela
Thank you very much, Mark Murphy; that was EXACTLY the type of response I
was looking for, and it provoked some more thought on my end.

My original idea was to avoid the need for a server.  My naive idea was
relaying data between devices themselves (ex. user A adds themself to count.
This messages/texts user B.  This adds user A to user B's list of
participants, and both update their counter.  Any future inquiries -- user
C -- to A or B will get that list of participants, and user C will now be
able to relay their own addition and removal to A and B).  The reason I
first dreamt that up was because of current applications such as google
talk, messaging, etc. -- correspondence between two devices, which other
applications http://www.youtube.com/watch?v=JUmachL5IW4 have been capable
of.

For those that may benefit from my case, a problem arises that can be seen
when the first user, ever, uses the application.  Who does he or she contact
when adding themself to the count?  They have no one to contact; the need
for the server becomes apparent.

Thanks again, Mark. You've described my upper bound for what I'll need in
order to relay that contact information between devices -- and maybe after
that, users can maintain a device-centric count.  I'll be looking into
status.net for that purpose.

Have a great day!  If you have any more comments or corrections for this
newbie, lay 'em on me.

-Danny

On Sat, May 1, 2010 at 7:30 AM, Mark Murphy mmur...@commonsware.com wrote:

 Ubuntu Explorer wrote:
  I have more or less the same question. The amount of detail in the API
  is overwhelming for me to choose what is really required for my app. Are
  there specific areas we can focus on that can help us ramp up quickly.

 That is impossible to answer in the abstract. A 3D first-person shooter
 is very different from a PDF viewer, which is very different from a
 social networking client, which is very different from a tip calculator.
 The specific areas [you] can focus on that can help [you] ramp up
 quickly will vary by what you are building.

 At the risk of sounding self-serving, if you find the documentation
 overwhelming, perhaps you need different documentation:

 http://wiki.andmob.org/books

 (in the interests of full disclosure, I wrote some of those)

  On Sat, May 1, 2010 at 4:27 PM, Daniel Favela dfav...@gmail.com
  First question: I've done the Hello World and notepad tutorials, as
  well as run through the quick tutorial
  http://www.youtube.com/watch?v=I6ObTqIiYfEon youtube by Dan
  Morril.  I've also read a bit of the Android fundamentals
  materials.  Is this enough experience to make an application like
  the one I'll describe below?
 
  If not, what do you think I should read or try next?  If so,
 
  The application I have in mind will be a counter triggered by
  users.  A user will add themselves to the count, remove themselves
  from the count, and view the count.
 
  When a user adds or removes themself to the count...
  - if possible, this will update the count on other instances for
  other users/devices
 
  That's my first step for now.  The UI will be a ListView showing the
  counts that users have added themselves to (once I create the means
  to have one count, I will easily be able to scale the app to have
  n counts).  There will be a button to add and remove the user.
 
  Sounds reasonable, right?  Please let me know if this sounds
  difficult, especially where the multi-device communication (in
  updating the counter) is concerned.  Know of a library that I'll
  have to use, or have some general advice for this?  Tell me! :)

 IMHO, you're looking at your problem backwards.

 Your application requires a server, from your description. Focus on
 getting the server right first:

 -- how are you planning on sending data to the server? (HTTP via a
 REST-style API? XMPP? SMTP? something else?)

 -- where and how are you storing your counts? (SQLite? MySQL? Oracle?
 Flat file? memcached? Redis? something else?)

 -- how are you determining who sees what count? (everybody sees
 everybody's? something else?)

 -- how are you planning on distributing updates from the server?
 (polling by the clients? WebSockets with Comet? SMS? something else?)

 -- what data format will you be using for all of this? (XML? JSON? YAML?
 binary payloads via Protocol Buffers? binary payloads via Thrift?
 something else?)

 The only part of Android that really comes into play when thinking about
 your server are the communication protocols and payloads to/from the
 server. In the end, Android can handle just about anything, but there is
 more work involved with some compared to others. However, it may be that
 you are still better off choosing something that you're already
 comfortable with, even if it makes the Android side a bit more complex,
 just to make your server work simpler.

 Once you have the server more or less working -- 

Re: [android-beginners] Advice For First (Simple?) Non-Tutorial Project

2010-05-01 Thread ubuntuexplorer
Dear Mark,
Thanks for the answer. As I understand, it seems that learning will be
simpler if I make up an app. idea and then try to learn what is required to
build it.

I will try to get the books suggested if I need further info.

Regards,
UE.

On Sat, May 1, 2010 at 11:30 PM, Mark Murphy mmur...@commonsware.comwrote:

 Ubuntu Explorer wrote:
  I have more or less the same question. The amount of detail in the API
  is overwhelming for me to choose what is really required for my app. Are
  there specific areas we can focus on that can help us ramp up quickly.

 That is impossible to answer in the abstract. A 3D first-person shooter
 is very different from a PDF viewer, which is very different from a
 social networking client, which is very different from a tip calculator.
 The specific areas [you] can focus on that can help [you] ramp up
 quickly will vary by what you are building.

 At the risk of sounding self-serving, if you find the documentation
 overwhelming, perhaps you need different documentation:

 http://wiki.andmob.org/books

 (in the interests of full disclosure, I wrote some of those)

  On Sat, May 1, 2010 at 4:27 PM, Daniel Favela dfav...@gmail.com
  First question: I've done the Hello World and notepad tutorials, as
  well as run through the quick tutorial
  http://www.youtube.com/watch?v=I6ObTqIiYfEon youtube by Dan
  Morril.  I've also read a bit of the Android fundamentals
  materials.  Is this enough experience to make an application like
  the one I'll describe below?
 
  If not, what do you think I should read or try next?  If so,
 
  The application I have in mind will be a counter triggered by
  users.  A user will add themselves to the count, remove themselves
  from the count, and view the count.
 
  When a user adds or removes themself to the count...
  - if possible, this will update the count on other instances for
  other users/devices
 
  That's my first step for now.  The UI will be a ListView showing the
  counts that users have added themselves to (once I create the means
  to have one count, I will easily be able to scale the app to have
  n counts).  There will be a button to add and remove the user.
 
  Sounds reasonable, right?  Please let me know if this sounds
  difficult, especially where the multi-device communication (in
  updating the counter) is concerned.  Know of a library that I'll
  have to use, or have some general advice for this?  Tell me! :)

 IMHO, you're looking at your problem backwards.

 Your application requires a server, from your description. Focus on
 getting the server right first:

 -- how are you planning on sending data to the server? (HTTP via a
 REST-style API? XMPP? SMTP? something else?)

 -- where and how are you storing your counts? (SQLite? MySQL? Oracle?
 Flat file? memcached? Redis? something else?)

 -- how are you determining who sees what count? (everybody sees
 everybody's? something else?)

 -- how are you planning on distributing updates from the server?
 (polling by the clients? WebSockets with Comet? SMS? something else?)

 -- what data format will you be using for all of this? (XML? JSON? YAML?
 binary payloads via Protocol Buffers? binary payloads via Thrift?
 something else?)

 The only part of Android that really comes into play when thinking about
 your server are the communication protocols and payloads to/from the
 server. In the end, Android can handle just about anything, but there is
 more work involved with some compared to others. However, it may be that
 you are still better off choosing something that you're already
 comfortable with, even if it makes the Android side a bit more complex,
 just to make your server work simpler.

 Once you have the server more or less working -- perhaps via a client
 technology you are already comfortable with -- then tackle the Android
 client. As you say, the client side should not be terribly difficult,
 assuming you have a well-designed server.

 IMHO, the majority of your complexity is with the server. The only
 reason that would not be the case is if you're going to try to graft
 your design onto an existing engine (e.g., you'll use the status.net
 microblogging server and distribute count data via tweets).

 --
 Mark Murphy (a Commons Guy)
 http://commonsware.com | http://github.com/commonsguy
 http://commonsware.com/blog | http://twitter.com/commonsguy

 _Beginning Android 2_ from Apress Now Available!

 --
 You received this message because you are subscribed to the Google
 Groups Android Beginners group.

 NEW! Try asking and tagging your question on Stack Overflow at
 http://stackoverflow.com/questions/tagged/android

 To unsubscribe from this group, send email to
 android-beginners+unsubscr...@googlegroups.comandroid-beginners%2bunsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/android-beginners?hl=en


-- 
You received this message