What Is It?
When WAti is complete, it will be a way of accessing WolframAlpha using your trusty TI-83+/84+ calculator. The program is to be written in TI-BASIC, making heavy use of hybrid libraries (such as KermMartian's excellent DCSB Libs) and Cn and gCn functionalities. There will be both calculator-side code and computer-side code adapted from KermMartian's gCn bridge skeleton code.

What's WolframAlpha?
I'm guessing most people know what WolframAlpha is, but in case you don't, it's a website on which you can make calculations about roughly anything. You are also very flexible with how you can input a query. Take this as an example:

all the money in the world / population of the world

I am also led to believe you can do some CAS stuff with it, however it is not my area of expertise.

Be Sure To Check Back At This Post As Development Continues

Should anybody have any questions, feel free to ask me and I will do my best to answer.

[UPDATE #1 7/7/13] - GUI Development Begins

Total Size = 142 bytes (No Optimisation As Yet)

Today I have began to utilise the powerful DCSB Libs to create a good-looking UI for the calculator. There is a search bar and an '=' button, in true WolframAlpha fashion. I am now unsure as to whether there should be an image to make it look like a search engine or I should have a scrollable area of screen where one can view the response given by WolframAlpha (if DCSB Libs is able to do so).

Today's Screenshot:



Uploaded with ImageShack.us

As you can see, there is A LOT of whitespace. Please voice your opinions, do you think it needs a logo, or a scrollable area where WolframAlpha's output could go (if such a thing is possible)?

You may also wish to compare this UI to that of WolframAlpha to see the result that I'm trying to go for

jsTIfied and SourceCoder's workflow are proving to be very handy, especially considering I can't find my USB link cable Very Happy

EDIT: Apologies for the repeated editing, I have been having some trouble with my image hosting service (Dropbox). I have now switched to ImageShack and everything is fine.
I'm glad to hear that you're moving ahead with this project, Electronics. I suspect that the computer-side aspect of this should be quite straightforward, and on the calculator side, that the interface will present a larger problem than the CALCnet part. I am of course here to answer any questions about the computer or calculator components, and to help you brainstorm if you get stuck. Where are you going to get started with this?
This sounds quite cool! What will the general UI look like? Will you provide the ability to cut and paste formulas to and from the homescreen?
KermMartian: As ever, thank you very much for your support, I am in no doubt you will be the first person I look to should I require any help. The small matter of where I will start...

I think it's likely I'll start with some flowcharts. What I'm quite tempted to do is to build the UI first and then add some Cn functionality afterwards.

elfprince: Smashing idea! That will most probably be on the to-do list, but I need to lay down the basic functionality first. As for the UI, I'm going to make it look very similar to WA's website. There will be a search bar and then a '=' button, finally there will be some sort of hex logo (either that of WAti or that of WA).

Thanks for showing interest!
I would like to confirm your earlier claim that WA does CAS. Of course, that means that I am eagerly looking at your project's outcome. Kerm now just needs to finish his computerless gCn bridge and WAti will replace my TIOS homescreen.
Glad to hear it ordelore. It may be some time before you can use it as a homescreen replacement, but thank you for the kind words.

On another, unrelated note, after reading the API rules, it seems that I cannot use the WolframAlpha stylings:

Prohibitions

2.5.8 replicate, in whole or in part, the "look and feel" of Wolfram|Alpha with Your API Client. Your API interface may not be composed of a combination of visual, design, or functional elements that could reasonably be expected to cause confusion between Wolfram|Alpha and Your API interface among users thereof. Also, Your API Client may not disparage or otherwise negatively represent Wolfram|Alpha.

I also only get 2000 API calls a month, which may pose a problem if I am to distribute this...
I don't believe that making a Wolfram Alpha-esque GUI on the calculator would constitute a violation of the prohibition stated above. As long as you put "Powered by Wolfram|Alpha" at the bottom, it's unreasonable for anyone to confuse a calculator W|A client with the actual W|A website. No one would "reasonably be expected to [... confuse] Wolfram|Alpha and Your API interface".
I guess so. I think they would be pleased if it said Powered by WolframAlpha. I believe that this project will be feasible in terms of code BUT it is likely distribution will pose as a problem. I can easily see users abusing the 2000 API calls a month policy, otherwise, I'd have to pay. Perhaps I should poke around the WolframAlpha development forums or contact Wolfram themselves.
You probably need to make people provide their own API keys and compile the program themselves. And you probably shouldn't go with any WolframAlpha-esque trappings in your program UI either.
How legal would you deem allowing users to provide their own API keys?
Distribute the bridge program as source and require them to build and run it for themselves and make it clear they're taking responsibility as developers for their copy of the program.
It is python so it cannot be compiled as such. Perhaps it could be distributed as a plain text file?
I mean, the main thing is make them edit the source themselves, and run the bridge on their own machines.
ElectronicsGeek wrote:
How legal would you deem allowing users to provide their own API keys?


Very. That's what most programs do that require something like this. In the source code, you'd just have something along the lines of:

Code:
WOLFRAM_API_KEY = "YOUR API KEY HERE"
Then when you distribute it, the program obviously won't run unless they supply one of their own keys, and then it falls onto them, and not you, to make sure their use of the API is allowed.
Thanks guys. I'm feeling very reassured that this will be distributable now. Smile


EDIT: Here's a progress update!
[UPDATE #2 8/7/3] - Testing The Hub

Today I have been pushing onwards with the development in a bit of an interesting manner. Play. Play is an excellent part of the learning process and indeed the development process. What I did to test the hub was to create a very basic TI-BASIC program that would allow me to send messages to the hub. The code is below if you fancy having a go yourself.


Code:
:sum(19,1    #Open Cn communications
:Repeat Str0="999
:Prompt Str0
:sum(17,Str0    #Send the contents of Str0 over Cn
:End
:sum(19,0    #Close Cn communications


After writing the code and opening my computer-side code so far, I opened up the gCn client and got started.

Screenshot Of The Day:


So, yes, it does work and it's quite clearly grabbing messages from the calculator, but the computer's interpretation isn't that clean. Is this expected behavior?
Ah, awesome work/project Very Happy

It reminded me of the WA integration for the TI-Nspire I made thanks to a Java bridge on nRemote, with the help of Jim Bauwens for the comm protocol Smile



It is so cool to have that on a calculator.... Very Happy

( A bit more on this : https://tiplanet.org/forum/viewtopic.php?p=129637 )
Electronics: Yes, that is expected behavior. The calculator's character set doesn't translate exactly into ASCII (although I provide a convenience class that does that if you wish). Keep up the good work!

Adriweb: Nice job.
YES PLEASE! I would love a tool like this! If someone invented some sort of discrete wireless networking adapter for the calculator though, this could wreck the grade curve...

EDIT: On a more composed, constructive note, I consider that the hardest part of your project is getting the API output of WA to translate into TI (the WA API is well documented and structured in XML I last checked, but maybe you can find some way to modify Calc2NET's HTML parsing function to read that).
Alebcay wrote:
EDIT: On a more composed, constructive note, I consider that the hardest part of your project is getting the API output of WA to translate into TI (the WA API is well documented and structured in XML I last checked, but maybe you can find some way to modify Calc2NET's HTML parsing function to read that).
I've fairly easily transformed it into something that works for IRC, so I don't think it would take too much more than that to have at least something useful (though perhaps not terribly pretty).
Alebcay wrote:
YES PLEASE! I would love a tool like this! If someone invented some sort of discrete wireless networking adapter for the calculator though, this could wreck the grade curve...


Funny you should mention that...

I think Kerm is actually making something like that.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
» Goto page 1, 2, 3, 4, 5, 6  Next
» View previous topic :: View next topic  
Page 1 of 6
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement