top | item 10676655

Introducing the IBM Swift Sandbox

246 points| julianozen | 10 years ago |developer.ibm.com | reply

59 comments

order
[+] hmottestad|10 years ago|reply
It's on Bluemix!!!

Here is my experience with Bluemix:

1. We needed to get bills to send to our accounting department. There is no way to get this out of Bluemix. We needed to contact 5 different people and send 2 different support tickets.

2. At one point we couldn't log into our accounts, the authentication server was down.

3. The docker container doesn't always get internet. Also it sure as hell is guaranteed to not have internet if you restart it.

4. If you use their SAAS databases, then some of them you can connect to from the outside world, but some you can't. And there is no way of knowing which.

5. Just because IBM makes a product available doesn't mean it works. We used NodeRED together with the IBM developed database connectors for DashDB. That connector will timeout after ~24 hours and then not throw any errors when you keep writing to it. Took 3 days to figure this out and fix it.

6. Their deploy system is nice, pity it brings down your service for 5-10 minutes even for deploys that are literally 100 lines of java code.

7. It's painfully slow to push images to their docker hub. Took 3 hours to upload an image with ubuntu and java. And our uplink is 50mbit.

[+] IBMContainerGuy|10 years ago|reply
Hi hmottestad!

I am one of the people working on the IBM container service that's available as part of Bluemix. I am not here in any official capacity, just as someone who wants to understand what the pain points of our customers.

Let me start by saying that I understand your pain. As every product on the market, we have issues occasionally, such as the authentication one you mentioned or the networking. However, these are only exceptions and rarely affect our users, at least as far as we are aware. Did this happen repeatedly or was it a one time occurrence?

With regards to the ticketing system, I believe you are correct. Things are not as smooth as you or I would like them to be. I will pass this on to the management chain.

For the uploading speed of images, I also believe this may be quite rare, since I cannot remember hearing complaints about it. Did this happen on separate occasions?

With that being said, please send us tickets when something is not going the way you'd expect.

Thank you for your feedback!

[+] what-no-tests|10 years ago|reply
Thank you for providing detail into the stench of your experience.
[+] mynewtb|10 years ago|reply
Nice, Testsuite As A Service, I like it!
[+] bitdiddle|10 years ago|reply
Buy some of the stock, you'll feel better :)
[+] amasad|10 years ago|reply
I'm also planning on adding support for Swift to https://repl.it once I figure out how to implement a proper REPL with it.
[+] AlphaSite|10 years ago|reply
There's already a repl?
[+] Apocryphon|10 years ago|reply
Looks like we're finally seeing the fruits of the Apple-IBM global partnership.
[+] king_magic|10 years ago|reply
This is really cool to see. Really hoping to see something similar appear for Swift on Azure or AWS. Also really hoping to see Swift web frameworks begin to appear, now that Swift is open-sourced & running on Linux.
[+] SeldomSoup|10 years ago|reply
Absolutely. Two days ago (before the open source announcement), I begrudgingly started learning Swift for a school project in iOS development. Now I'm itching to dive into the language.
[+] fauigerzigerk|10 years ago|reply
This seems to be down. I'm getting 500 errors or a blank/blue page. I hope this wasn't supposed to be a demonstration of IBMs scalability prowess.
[+] Tloewald|10 years ago|reply
Same here. If only it were a brighter shade of blue!
[+] sosedoff|10 years ago|reply
If you're looking for something similar for other programming languages too, check out https://bit.run/. It supports Ruby, JS, Go, Python, Rust, PHP and many more.
[+] coupdejarnac|10 years ago|reply
Would it be alright for me to embed bit.run in a Swift tutorial site I'm making? My contact info is in my profile.
[+] Shivetya|10 years ago|reply
I am looking for a new language to learn, preferably more PC style platform focused, would this be a good language to learn?
[+] rdtsc|10 years ago|reply
What do you want to do with the language?:

Here are some choices I think are interesting as new languages:

Elixir : interpreted / scalability / concurrency / fault tolerance/ friendly community

Rust : compiled / close to C speed / memory safety / concurrency

TypeScript : compiles to Javascript but with types / runs in the browser

Elm : compiles to Javascrtipt / functional / runs in the browser

[+] JonathonW|10 years ago|reply
If you're writing iOS apps, Swift is the language to learn.

If you're writing server-side code for Linux/OSX, probably not quite yet. The language is nice, but it's only been available as open-source for a day now... the ecosystem you'd need to be productive in Swift isn't there yet.

(On the other hand, if you'd like to be involved in building that ecosystem, now's probably the time to jump in.)

[+] AndrewGarner|10 years ago|reply
Look into F#.

It's open source. Works on Linux, Mac OS X, Android, iOS, Windows, etc. It has a good ecosystem and tooling built around it already but you can also tap into the C# ecosystem, if necessary.

It compares really well to Swift: http://www.slideshare.net/ScottWlaschin/swift-vslanguagex but even without that comparison, it's worth a look on its own.

[+] jorgemf|10 years ago|reply
Have you tried kotlin? It is developed by jetbrains, works in the JVM and you can mix java code and kotlin code in the same project. It is still in beta but it has been developed for more years than swift and both look quite similar. Jet brains said they wanted to release the version 1.0 the the end of this year... Plus it is fully integrated in intelliJ idea
[+] pjmlp|10 years ago|reply
If you plan to do native iOS and Mac OS X applications, yes.
[+] schnevets|10 years ago|reply
I wonder if this was announced as a reaction to Swift going open source. I could see some IBM team working on this system as a POC, and suddenly being given an urgent deadline to coincide with the license change.

Gain from the momentum and maybe turn a pet project into something bigger. I guess that's the benefit of having tens of thousands of developers...

[+] Someone|10 years ago|reply
Apple and IBM are fairly close nowadays. Because of that, I got the impression this and Apple's announcement are coordinated actions.
[+] mingodad|10 years ago|reply
I think that you are right on this, when looking at one of the examples (server.swift) it seems that people are paid by characters typed and they forget (or never heard of) the mantra DRY (Don't Repeat Yourself):

func fdSet(fd: Int32, inout set: fd_set) {

		let intOffset = Int(fd / 16)

		let bitOffset: Int = Int(fd % 16)

		let mask: Int = 1 << bitOffset

		switch intOffset {

		case 0: set.__fds_bits.0 = set.__fds_bits.0 | mask

		case 1: set.__fds_bits.1 = set.__fds_bits.1 | mask

		case 2: set.__fds_bits.2 = set.__fds_bits.2 | mask

		case 3: set.__fds_bits.3 = set.__fds_bits.3 | mask

		case 4: set.__fds_bits.4 = set.__fds_bits.4 | mask

		case 5: set.__fds_bits.5 = set.__fds_bits.5 | mask

		case 6: set.__fds_bits.6 = set.__fds_bits.6 | mask

		case 7: set.__fds_bits.7 = set.__fds_bits.7 | mask

		case 8: set.__fds_bits.8 = set.__fds_bits.8 | mask

		case 9: set.__fds_bits.9 = set.__fds_bits.9 | mask

		case 10: set.__fds_bits.10 = set.__fds_bits.10 | mask

		case 11: set.__fds_bits.11 = set.__fds_bits.11 | mask

		case 12: set.__fds_bits.12 = set.__fds_bits.12 | mask

		case 13: set.__fds_bits.13 = set.__fds_bits.13 | mask

		case 14: set.__fds_bits.14 = set.__fds_bits.14 | mask

		case 15: set.__fds_bits.15 = set.__fds_bits.15 | mask

		default: break

		}

	}
[+] jacques_chester|10 years ago|reply
There was a half-joke on Wednesday that we should do a Swift buildpack for Cloud Foundry.