Dear Blog-Viewers,
Welcome again to another wonderful week in the world of computer science. This week, I overcame a wall in my programming–dealing with networking! Last week I figured out how to automatically convert street addresses into latitudes and longitudes among other Java concepts with EcoMap Editor. This week I learned how to gather that information and synthesize it into the EcoMap iPhone app through different methods of networking. I learned that all of the important code is run in something called a closure which captures data from the network. But all methods related to that data must be run within that closure and closures cannot return values…
At first I felt like this^.. so confused. (Even Shrey Gupta apparently doesn't always understand. Just kidding, he does!) But then I remembered what I had learned about with multi-threading. The tableview (as you will see in the next image) of services must be populated with data once the data has loaded from the network; the closure ensures that all the data has been gathered from the network before any of it is used. The program would otherwise just appear to be blank. So finally I figured out how to deal with networking issues and populated a tableview.
I am proud to reveal that the iPhone app is really taking its shape! For weeks I have been learning concepts like data handling, multi-threading, and basic swift developing techniques. But now, all of these concept have come together into what looks like a somewhat usable app. You can see each row has a green title, a transparent, unobtrusive description, and an image of the site to show what that service is all about.
Next steps include creating a home/introduction page, designing pretty buttons, creating a detail view that allows users to get more information by tapping on a service from the above table, and figuring out how to get information about what materials are needed most at different composting locations.
With regards to that last feature, different compost locations might have different needs. For example, if there is a large supply of banana peels in one bin, it is possible that the location might need more leaves and paper shreds to chemically balance the compost pile. Being able to regulate what materials go into compost bins is essential to the most efficient production of soil.


That picture of Shrey got me XD brilliant
ReplyDeleteI'm most looking forward to seeing how you might get which material needs are wanted at which composting sites. Any ideas?
Navya had a good idea. Having these compost sites update this information on their own, perhaps once a week, would put little strain on ScrapZero.
DeleteAs far as design for how to show what is needed where. I am thinking, I will have four or five cute logos that depict the general type of organic waste, whether that be pure kitchen scraps, dry materials like leaves and garden waste, or fire place ashes. Of course fire place ashes are quite specific; I need to come up with a generalization for these types of waste materials as they all serve a certain purpose.
Looks like you had quite the photo shoot with Shrey! :)
ReplyDeleteOh yes indeed! This photo is part of Shrey's senior picture collection.
DeleteI loved the photo of Shrey! And wow, the app looks great. Would it be feasible to have different composting sites update the information themselves about what materials they need?
ReplyDeleteHey Navya,
ReplyDeleteI love the picture as well. It think it correctly demonstrates the circumstance of failing code.
I actually really like your idea for having these sites do this on their own. Thank you for your input! If I choose this route, I might have to develop some sort of interface so that they can easily send me this information.
I really want this to be as automatically done as possible!
Lorentz,
ReplyDeleteThis is Tanner from Lutheran High School in Parker Colorado. I am looking through your senior project because I found it to be interesting by the title. You seem to be doing and publishing some great work. What would you say you have struggled with the most with your project? Also how much time do you have to put in a week to make your deadline. It seems like a lot, and how do you balance it with a vacation? I am excited to see what the end product will be.