Using GAE SDK for both Python and Go - google-app-engine

I have used the GAE SDK for developing Python apps for a year or so. I would like to try my hand with Go. There is a different SDK download for Go and the docs say it is slightly different than the Python SDK. My question is do I need to install this separately and use different SDKs for Python/Go? Or is the Go SDK "inclusive" of the Python SDK?

Related

scikit Learn with Google app engine

I am currently working on a data science project using python 2.7 framework which uses few modules like numpy,flask,pandas and have successfully deployed the application to Google cloud using app engine. I am now planning to use scikit-learn ML framework and my concern if it is compatible with google app engine?. I have seen some past forums where they mentioned sci-kit learn is not supported on App Engine. Wanted to check if this is still the case. Appreciate your input's here
You're referring to the Pure Python limitation in the Python standard environment sandbox.
One possible solution is using the GAE Python flexible environment, which doesn't have such limitation. While fundamentally it uses Google Compute Engine (GCE) VMs underneath it still retains some of the GAE convenience features which you'd need to handle yourself if going straight with a GCE solution.
See the Choosing an App Engine Environment guide.
It looks like sci-kit learn is not supported on App Engine, and the using managed VMs is the preferred solution. See the resolution of this bug.
Also see this similar question for another alternative approach.
I suggest you check out Google Compute Engine or Google container Engine.
2.7 Standard only allows you to import whitelisted/proprietary modules (listed in the Docs), whereas the Flex Environment supports all Python modules.
The new 2nd Generation Python 3.7 Standard Environment supports using all modules as well as many other features that 2.7 Standard doesn't.

Python 3 for Google App Engine

I've started an App Engine Project with Python 2.7 but had already be used to working on Python 3.
Does anyone know if there are any plans for Google's App Engine to work with Python 3?
App Engine's new (and currently beta) Flexible environment supports Python 3.4.
On August 10, 2016, Google Cloud Platform Blog announced that Python 3 was in beta on Google App Engine:
Developers running Python on Google App Engine have long asked for support for Python 3 and third-party Python packages. Today we're excited to announce the beta release of the Python runtime on App Engine Flexible Environment with support for Python 3.4 and 2.7. You can now develop applications in the Python version you prefer and create performant mobile and web backends using the frameworks and libraries of your choice. Meanwhile, developers benefit from App Engine's built-in services, such as autoscaling, load balancing, microservices support and traffic splitting and hence can focus on their code and not worry about infrastructure maintenance.
Yes there are plans, see
https://code.google.com/p/googleappengine/issues/detail?id=909
(well, it's not really a concrete plan, but its an open issue and Google has acknowledged it's existance)
However, because Python 2.7.x and Python 3.x are quite similar, the priority to implement Python 3.x support from Google's perspective isn't very high. It's likely a massive amount of work to support it, and it isn't really a critical issue. Don't expect Python 3.x to be supported anytime soon.

java.lang.UnsupportedClassVersionError in Google App Engine

I'm running windows 7 and juno. Jdk 1.7, gwt 2.4, app engine 1.7.
I did the stockwatcher tutorial here and everything worked great. I then deployed it to app engine. Everything still worked great!
However, I then did the RPC part of the tutorial here. When I ran locally, I got a java.lang.VerifyError that I fixed by following this thread (putting -XX:-UseSplitVerifier in default VM arguments). It then worked locally and I deployed to app engine.
In app engine, I get a java.lang.UpsupportedClassVersionError. I found two threads that seem to have the same problem, here and here. I'm using a fresh install of windows 7 and the only jdk I downloaded was 1.7. Looking through eclipse, I see jre7, jdk 1.7, and app engine 1.7.
I read somewhere that app engine doesn't work with 1.7. However the app engine sdk version on the downloads page is 1.7 (I think that might be super recent) but I don't really know if those things are related. I went ahead and downloaded java 6 and app engine sdk 1.6.6, added jre6 to the installed jres, set the compiler compliance level to 1.6, changed it in my project too for good measure, and changed the default app engine sdk to 1.6.6.
Now I'm getting the error, "Java compiler level does not match the version of the installed java project facet." I googled the problem and everyone says to right click the project and change the facet, but I can't seem to find that option. I also have no idea if I'm going about this the right way. I'd much rather use the most recent versions of everything if possible. I also don't understand why app engine worked the first time with no RPC, but broke with the RPC.
Any help would be greatly appreciated!!! THANK YOU!!!
GAE does not currently support java 1.7, only 1.5 and 1.6 are supported. See the java docs for more information.
The relevant paragraph is the following:
App Engine runs Java applications using the Java 6 virtual machine (JVM). The App Engine SDK supports Java 5 and later, and the Java 6 JVM can use classes compiled with any version of the Java compiler up to Java 6.
The version of the GAE sdk you downloaded (1.7) isn't related in any way with the java version.
GAE is a sandbox environment. Currently it supports only Java 6. But to solve your problem, if you can downgrade your compile version to Java 6, you should be able to take advantage of GAE.
But if you want a standalone server environment without any restrictions, check other cloud platforms like heroku or cloudbee
Possibilities are
you don't have right JDK or
GAE you using that does not support 1.7
Open below file under .settings (use Navigator window) and change java project facet to 1.6
org.eclipse.wst.common.project.facet.core.xml
After change you must close and restart the eclipse.
Currently ,... java 7 already supported
Warning: In a future release, support for Java 6 will be removed, so it is a good idea to start migrating to Java 7 now. If you've been using Java 6 and are interested in learning about possible issues migrating to Java 7, this white paper may be helpful.
from : https://developers.google.com/appengine/docs/java/overview

How to make a cloud and all platforms offline apps together?

I know is hard to develop web application and make a individual app versions in each device.
But i just want to know how that works with big companies.I want to know how they write there code
The best example is Evernote and Google Drive.
They make a cloud application and individual apps for each device.
So the questions are..
How do sync the data with the cloud apps ?
Do they use version control ?
Can i get software requirement specification anywhere ?
Platforms and Languages:
iPhone and Mac - Objective C
Android and Other Mobile Apps - Java
Windows 8 - C#
Web Apps - PHP or Python
How do you solve this solution languages differ?
I guess i it's not possible with version control..
How to minimize coding ?
I recommend you use a version control tool.
make a individual app versions in each device.
I assume you mean developing different versions with few differences. The branch feature in a version tool can help you manage these versions easily.
How do sync the data with the cloud apps ?
You can use the web deployment feature to upload the applications/modifications to your web server.
I list some version control tools here for your reference:
Git
SVN
SourceAnywhere (I work for the company)
Team Foundation Server

How to use BulkLoader in google apps using java

How to use bulk loader tool in java, i got docs for python but what about java
There is no Java bulkloader, you need to use the Python version which works also on the Java applications.

Resources