Thanks for commenting on the proposal.

Some points I would like to say -

- By "Model to build URL’'....misunderstanding what you want to do. - 
Yes, here I'm going to replace the javascript doing the websocket 
interaction with native code. This may take lot of time and work but it can 
be done.
Doing this would enable for better error detection and handling of results.

- UI Improvements - The aim of the project says that the new version needs 
to be made available to all Sage iOS Users. For doing the same we need to 
ensure that we have an improved UI with better implementation of all the 
functionalities.
I have worked with UI and animations in my personal projects. So I think 
its possible for me to complete the UI improvements within time.

- Syntax Highlighting - This feature requires a lot of work. I'm going to 
put this with a comment saying 'if time permits'. But anyways I'm looking 
forward to work on this feature.

- Data from the input and output should already be copied to the email 
body.  But perhaps there’s a bug there...
I have worked with sending Mail from iOS apps before. 
The link below tells us about the method used to do the same.
Here we can directly embed the HTML in the Mail Message parameter.
https://developer.apple.com/library/prerelease/ios/documentation/MessageUI/Reference/MFMailComposeViewController_class/index.html#//apple_ref/occ/instm/MFMailComposeViewController/setMessageBody:isHTML:

- Beginners Tutorial/ Splash Screen - Already there in the proposal. Need 
not take much time to implement.

- In-app settings - Although not stated explicitly in the proposal but it 
would be there for changing defaults language and other settings.

- Sharing with Airdrop - I would like to add this.The new Airdrop feature 
works seamlessly over different Apple Devices and is a good way of wireless 
file transfer. The type of file that needs to be shared can be discussed 
later.

- I made some changes to the timeline accordingly. 


On Wednesday, March 25, 2015 at 10:41:29 AM UTC+5:30, Ivan Andrus wrote:
>
> Thanks for submitting it.  All in all I thought it was a pretty good 
> proposal.  I’ll just write a few thoughts as I go through it again.
>
> - By "Model to build URL’s" are you talking about replacing the javascript 
> doing the websocket interactions with native code?  I originally built the 
> app this way, but back then the API was changing fairly regularly (it’s 
> more stable now), and I never found the time to implement interacts (e.g. 
> http://wiki.sagemath.org/interact/misc) with native widgets.  Since these 
> widgets then call back to the server and update themselves I didn’t think 
> it was feasible to go half native and half html, so I went full html and 
> got everything "for free".  It would be great to have native widgets for 
> everything, but I think it might be a _lot_ of work, and also more 
> maintenance.  This is my biggest concern with your proposal, but maybe I’m 
> misunderstanding what you want to do.
>
> - There are lots of UI improvement ideas.  This is great.  It seems like 
> it might take more time than you have allotted though.  I’m not sure since 
> you probably work faster than I do on iOS.
>
> - Syntax Highlighting could be moved later in the schedule since it seems 
> independent of the other features and could therefore be easily dropped if 
> time runs out.
>
> - Depending on your answers to the above, you might want to include some 
> stretch goals in the timeline
>
> - Data from the input and output should already be copied to the email 
> body.  But perhaps there’s a bug there...
>
>
> Some ideas from past proposals in case you want to do one of them instead 
> of or in addition to what you already have.
>
> - Integration with Sage's help system — this would be great!
> - Tags/Folders (kind of like your filtering)
> - Sharing with other iPhone’s/Macs with AirDrop, Dropbox, etc.
> - SageMathCloud and/or Notebook usage (probably just "fullscreen html")
> - Beginner tutorial/splash screen
> - In-app settings
>
> -Ivan
>
> On Mar 20, 2015, at 7:57 AM, SHUBHAM SORTE <[email protected] 
> <javascript:>> wrote:
>
> I have submitted a proposal on the Melange site for Sage iOS.
>
> Any comments and criticism on the same are welcome.
>
> Regards
> - - -
> Shubham
>
> On Tuesday, March 3, 2015 at 11:47:10 PM UTC+5:30, SHUBHAM SORTE wrote:
>>
>> Hello,
>>
>>
>> I'm Shubham Sorte, a 2nd year Information Technology student at Manipal 
>> Institute of Technology, India.
>>
>> I have been working on the iOS platform from the last 2 years.
>>
>>
>> I've been looking through the iOS source code for iSage and wanted to put 
>> my ideas across to see if they are feasable:
>>
>>
>> *IMPROVEMENTS*
>>
>>
>> *1. Total UI redesign *
>>
>>    - The first thing which I noticed was the UI. Currently, the app has 
>>    a basic (but functional) UI which could be improved for iOS 7 and above 
>>    standards confirming to Apple’s new Human Interface Guidelines.  
>>    - A Flat and Minimalistic UI can be worked upon with a theme which is 
>>    applied all over the app. 
>>    - The tableView looks cluttered as all the options are displayed 
>>    together. Also they are not quiet visible. A new tableView with detailed 
>>    and clear design can be worked on with lesser ornamentation. At the end 
>> our 
>>    aim should be simplicity i.e. bringing order to complexity.  
>>
>>
>> *2. iPad Interface redesign and reconstruct*
>>
>>    - The current iPad version has no such distinction when compared to 
>>    the iPhone version.  
>>    - Its just a scaled up version of the iPhone app.  
>>    - A totally different interface can be designed for the iPad which 
>>    could in which we could use the bigger screen to do a lot more. 
>>
>>
>> *3. A better web view and async tasks *
>>
>>    - webView can be integrated with an async loader/ progress indicator 
>>    so that it feels more responsive to the user 
>>    - Async loaders like MBProgressHUD (
>>    https://github.com/jdg/MBProgressHUD) or the inbuilt 
>>    ActivityIndicator views can be used where ever we are making requests to 
>>    the server. 
>>
>>
>>    - While testing the app on slower networks I noticed that it send a 
>>    long request making the thread wait for the response. Timeouts can be 
>> added 
>>    if we encounter such a situation. 
>>
>>
>> *4. A Menu for options*
>>
>> Again, this is a part of UI redesign but I considered putting it as a 
>> point because its not there in the present app.
>>
>>    - The user should be given options for activities. Sidebars can be 
>>    used like JASidePanel (https://github.com/gotosleep/JASidePanels) or 
>>    something like this http://goo.gl/1EYOpX which I have made in my 
>>    earlier apps 
>>
>>
>> *5. The Sage Info view redesign *
>>
>>    - The current ‘FlipsideView’ uses a local html file to show the 
>>    content. Its good but its not integrated with the iOS elements. 
>>    - A custom textView can be used instead since the content is to be 
>>    accessed from screens of different sizes and resizing of the text as well 
>>    as other elements can be done. Its really difficult to read on the 
>> current 
>>    iPad version, the text size being static. 
>>
>>
>> *6. The keyboard and keyboard accessory*
>>
>>    - Present keyboard accessory works just fine, but it maybe improved. 
>>    The same keyboard view is loaded in both the iPad and iPhone.  
>>    - The buttons are too small to work sometimes.  
>>
>>
>> *7. Share menu *
>>
>>    - A slide for options can be used to give other options. Something 
>>    like in iOS Mail App - http://goo.gl/xKLPTR 
>>    - The presently used accessory view with a thumb icon takes up space 
>>    in the cell making it difficult to use.  
>>
>>
>> *BUGS*
>>
>>
>> *1. Empty row issue*
>>
>>    - When we click on + button to add and if we don’t add anything(not 
>>    typing anything), we get an empty row in the tableView as you can see 
>> here 
>>    http://goo.gl/wqflJY. 
>>    - I would be interested in working on to fix this issue 
>>
>>
>> *2. Async request keeps on loading*
>>
>>    - As I said earlier, sometimes the request takes a long time to fetch 
>>    the result 
>>    - Timeout can be included which alerts the user to check network 
>>    connectivity or retry 
>>
>>
>>
>> *OPTIMIZATIONS*
>>
>>
>> *1. Moving the code to MVC Design*
>>
>> We all know the advantages of using design patterns and when we talk 
>> about iOS, we mostly follow MVC.
>>
>>    - The current code is not wrapped around the MVC pattern.  
>>
>>
>>    - Code can be rebuilt on the MVC pattern. 
>>
>>
>> *2. Interface shifting to Storyboard for both iPhone and iPad* 
>>
>>    - The present app is made completely on xib files for the interface 
>>    and the segues are hardcoded in the controller files. 
>>    - A storyboard may be used for both the iPhone as well as the iPad as 
>>    this may reduce the time and memory complexity of the app over device 
>>    resources. 
>>
>>
>> *3. Images and icons organised by images xcassets catalog*
>>
>>    - Use of xcassets is the new standard as of Xcode 5 and iOS 7 
>>    - The current project is missing this and therefore can be implemented 
>>
>>
>> *4. Backward Compatibility till iOS 6.0*
>>
>>    - As the app maybe updated to run better on newer OS, attempts can be 
>>    made so that its compatible with earlier versions as well. 
>>
>> *5. Make the app comply to 64 bit architecture rules laid out by apple 
>> after the release of iOS 8*
>>
>>    - According to Apple (https://developer.apple.com/news/?id=10202014a) 
>>    starting February 1, 2015, new iOS apps uploaded to the App Store must 
>>    include 64-bit support and be built with the iOS 8 SDK, included in Xcode 
>> 6 
>>    or later. The new settings can be applied to the app.
>>
>>
>> Many of the above ideas may not be valid, but if any of them are, advice 
>> and criticism are appreciated.
>>
>>
>> Thanks,
>>
>> Shubham
>>
>>
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sage-gsoc" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] <javascript:>.
> To post to this group, send email to [email protected] 
> <javascript:>.
> Visit this group at http://groups.google.com/group/sage-gsoc.
> For more options, visit https://groups.google.com/d/optout.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-gsoc" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-gsoc.
For more options, visit https://groups.google.com/d/optout.

Reply via email to