Four Winds Interactive headquartered in Denver offers their digital signage content manager and content player applications to enterprises of various sizes in many industries, providing digital content to large live digital signs and billboards in arenas and airports to smaller kiosks and interactive consoles for customers in entertainment venues, banks, and other industries and locations.
N/A
Scala
Score 9.9 out of 10
N/A
Scala in Malvern, PA offers their digital signage software which provides Designer for content design, Content Manager for content organization and control, and Player for content viewing. Notably the software supports a wide array of digital signage including touchscreen kiosks and service for direct customer engagement and interaction.
If you want to create an elaborate, multi-leveled kiosk for your organization, Four Winds Interactive Content Manager Desktop can definitely do that for you. Just know going in that it's not the easiest to operate, and definitely devote time to training. Definitely have a couple of people go through this training, so it's not just one person in your organization that can operate Four Winds.
If you are in the data science world, Scala is the best language to work with Spark, the defacto data science data store. I think that is really the main likely reason I would ever recommend Scala. Another reason is if you already have a team of programmers familiar with functional programming, e.g. they all have years of Haskell experience. In that case, I definitely think Scala is a superior and faster-growing language than Haskell and that picking up Scala after Haskell should be quick.
The FWi platform handles very complex or unique situations better than other signage solutions. They support every standard type of data and web service, and through a supplemental Integration Framework product they can support almost anything out there... or things that aren't even out there yet.
Their support and assistance has gotten very good over the years; I'd say it is now excellent. Their team of sign builders and engineers have advanced knowledge of the product and how it can be used; you won't get a "did you try restarting it?" when dealing with them.
When working with a large installation the amount of mouse clicking and dragging and setting of settings and make your hand a bit sore but the modular component setup of this software demands a lot of settings.
As a custom software designer myself I would like to see more group effective operations so I could effect a change at a property level instead of an individual player level.
Upgrading to a new version of the software I have left to the experts at FWI because it is rather complex. They state they are working on better ways to perform large upgrades.
The built-in compiler, scalac, is sssssssssslllllooooowwwwww. I mean like, if you thought the Java compiler was slow, try Scala! The default compiler on my 12k line codebase takes 4 minutes to compile from scratch on my i7 quad-core machine. This can be mitigated through the paid solution of Hydra which compiles your code in parallel. Unfortunately, it's quite expensive and your legal department or finance department may not approve of it. But if they do, for me, it reduced my compile time down to 80 seconds, much more manageable.
Scala is not going anywhere and support for it is slowly dying. This is the main reason I would not choose Scala for my next company or project. Important Scala libraries such as secure social (which is used for OAuth, a major requirement of every web app) are hardly maintained. Another library that suffers from lack of updates is Slick, the database mapper. There aren't enough engineers working on it to even provide support for the new features that came out in Postgres 9.0 (e.g. JSONb). There is simply not enough of a community to drive Scala forward and keep 3rd party libraries up to date as Java world does it.
As a corollary of a stagnant community, hiring Scala developers is hard as well. Of the 30 backend engineers we've hired, only 3 came in already knowing Scala. And as I will mention below, this is a BIG problem because learning Scala is really tough.
The learning curve for Scala is very, very steep. Anecdotally, I came into my current company with strong Java experience. Java is the closest language to Scala but it took me 6 months before I stopped needing to pair program on easy tickets. It doesn't help that Scala has some weird syntax like Map[A, +B] and that it forces you to do functional programming.
The customer service team is very responsive and usually returns calls or emails within a couple of hours of placing a request or inquiry. Just about every rep I've spoken to has been very thorough and helpful, walking me through each problem and explaining the solutions in a way that's easy to understand.
Simply put, FWi outperforms just about any other software solution by being more adaptable and more reliable, while being competitively priced for its class (top shelf). It's not as cheap as using "free" signage software that's in the cloud, or built into display screens (LG), but if you plan on doing more than running slides and you plan on doing it in multiple locations and screens, this is the platform to do it on - especially if your venues and needs vary across the network.
Negative: slow engineer onboarding. As I mentioned before, it took me 6 months to get up-to-speed on Scala and didn't need to bother more senior Scala engineers anymore for help with every ticket. That's hundreds of hours I wasted of myself and other engineer's time.
Positive: thread safety, no concurrency bug. The ROI on this one is really hard to calculate, but I do believe Scala has saved me hundreds of hours over the past few years by allowing me to never have to worry about deadlocks or race conditions. Scala is simply so safe we've never had race conditions within the JVM before.
Negative: third-party libraries aren't maintained so we have to fork and update them ourselves. As I mentioned before, we use Securesocial but it stopped receiving updates and there is simply no alternative to it. So, we forked it and put an engineer on it for a month to get it back up-to-date. What a waste of his time!