ctodx

This Blog

News

Favorite Posts

Archives

January 2014 - Posts

  • DevExpress Universal for Dummies (part 1)

    (Julian writes: A week or so ago I was chatting with an old customer and friend and raconteur, Joe Hendricks, about the inestimable work he does for non-profit organizations. Specifically, I wondered if he was up to writing about using DevExpress Universal from the viewpoint of an amateur developer (his words!) who helps non-profits improve their web presence. Before he jumps all over me, I hasten to add that “old” there refers to his time as a customer of ours, not his age. Which is young. Well, OK, a young middle-aged. There, I’m sure that sorted that out. So… before I continue shooting myself in the foot, I’m handing it over to Joe.)

    Joe working on The Mustard Seed Project’s website.

    Joe working on The Mustard Seed Project’s website (an outreach for impoverished senior citizens) in their lobby.

    Hi! I am Joe Hendricks, a 61yr retired healthcare marketing manager, incurable punster, avid mountain climber/hiker and more importantly - amateur C#/ASP.NET programmer and volunteer webmaster for 20+ anti-poverty nonprofits. My limited database and programming skills did help my career a lot.

    The purpose of this series of posts is to share my experience (especially my mistakes) in using Developer Express’s Universal Subscription product to help those nonprofits.

    Project Background

    Since 2007, my wife and I have provided the graphic layout, content, CMS access and web hosting for nonprofits on our collocated Windows 2008 Webserver running ASP.NET/Internet Information Services(IIS). The nonprofits include a wide range of antipoverty services: retired policemen helping Darfur genocide refugee camp guards protect the refugees from raiders, a free medical clinic in Honduras, senior services here in my small town, an orphanage in Africa, education for the poor in the Dominican Republic, etc.

    We used the ASP.NET open source library called “My Web PagesStarter Kit” at Codeplex, mainly for these reasons:

    • Easy to use CMS for nonprofit staff
    • Text storage instead of database
    • Easy deployment (drag and drop onto server via Remote Desktop)
    • Basic features needed by small nonprofits (text with embedded images, photo gallery, contact form, login, search button, image and file uploading)
    • Works fine with Google Analytics, a PayPal Donate button and AddThis social media buttons
    • Some extensibility

    Although it’s worked well for several years, it is now becoming insufficient for these reasons:

    • Boxy CSS layout is becoming increasingly out of date
    • Cannot easily handle multimedia or scheduling/calendar
    • Suboptimal display on mobile devices
    • Too time consuming (my beloved wife lost her cancer battle and so now I have to do all the work for the websites)
    • Decreasing open source community interest and updates

    Because I had used some of the DevExpress Universal features at work before retirement, I have no doubt I will find more than what I need in their products. Why not just select their ASP.NET subscription? Well, Coderush and XPO/XAF, doh!

    The Project

    I plan to slowly switch over the nonprofits needing new functionality for their website visitors from the open source framework to DevExpress by the end of 2014. By the end of 2015, I hope to have full CMS functionality added. I can only apply 20 volunteer hours/week to this which must include my own training, continued webserver management and continued support for the current websites. I’m sure I’ll be “seeing” a lot of Oliver, Mehul and Amanda via their online DevExpress webinars and training - fun! (Thank heavens he didn’t mention me – Ed.)

    So the next blog update on this project will be after I finish installing Visual Studio 2013 Pro (due here next Monday) and finish going through the DevExpress demos that seem to apply to the project (including deployment, XPO setup, and each DevExpress ASP.NET control). I will also be using the new online training for ASP.NET to further improve my web skills. Hopefully by my discussing my path to ASP.NET enlightenment, you’ll find something to learn from my inevitable mistakes.

    PUNishing Summary

    If your project suffers from open sores like mine, dev in and grab control(s)!

  • TestCafe and BrowserStack: Run tests everywhere!

    Marion from our support team for all things JavaScript – she knows more than me, I kid you not – has written this excellent article about the new support for BrowserStack in the 13.2 version of TestCafé. “BrowserStack”, what’s that? was my immediate reaction, coupled with a blank look, but Marion explains all:


    We took great care to ensure that our TestCafe framework is easy to use no matter how you intend to test your applications. And now we’ve published our new testcafe-browserstack npm module, I am thrilled to let you know that testing your applications in all existing desktop and mobile browsers is now a breeze.

    How? BrowserStack, FTW!

    The testcafe-browserstack module allows you to create a tunnel between your machine and the BrowserStack network. Once a local tunnel is created, you can test your internal or external websites in BrowserStack remote browsers as easily as you would in your local browser. A nice capability, isn’t it?

    Here are the three simple steps you need to follow in order to run your tests in the browsers listed on BrowserStack:

    1. Install the TestCafe-BrowserStack module

    Use the following command line to install the module from npm:

    npm install testcafe-browserstack

    2. Connect a worker

    Get the sample code from here and create a new worker in TestCafe.

    3. Enjoy!

    Check whether you wish to run your tests with all the browsers installed on your machine or just in BrowserStack remote browsers or both.

    To learn more about how to install and use the testcafe-browserstack module, read the following support article: TestCafe - How to add remote workers from the BrowserStack web service

    Summary

    Use the powerful TestCafe framework to create functional tests for your application. Then, run your tests in all browsers and on all devices of your choosing using BrowserStack.  A win-win for all!

  • Tipping points for technology and software

    Since it’s a new year, time to think deep thoughts. Consider this proposition: when some technology graduates from expensive/uncommon to affordable/prevalent, there is a corresponding major advance in software to take advantage of it. That software extends the technology in ways that were never thought of in the first place.

    Le Penseur by RodinIn some way, this is ruddy obvious: why write software for a technology that is not succeeding? For sure, if the technology is expensive enough, you could make money providing expensive software for it, but in reality, why should you? You are in essence laying a bet that said technology will become more affordable and therefore common in the future, at which point you will be well poised for dominance in the field.

    No, what I find more interesting here is what happens to software when a technology hits the real mainstream. A small diversion if I may.

    The other day I bought an Eye-Fi Pro X2 SD card for my DSLR, mainly to try it out to see if it fits into my way of taking photos. If you’ve not heard of it, it’s not only a memory card but also a WiFi adapter: take a photo and it’s automatically uploaded to your PC via your WiFi network. The card came in a cardboard sleeve with just a USB adapter. No leaflets, no instructions, the sleeve had a sticker saying “go to this website to learn more about configuring the Eye-Fi card”. This points out to me several things. First, the SD card format had to become standard before making this adapter even made sense. Second, there has to be a reliance on the use of WiFi in the home. And third, it assumes that customers have ready access to fast internet (a driver and an app had to be downloaded and installed, you had to register with the site so that, if you wanted to, your photos would be uploaded to their servers).

    Fast internet is one of those technologies I’m talking about. Remember the days of Hayes modems and top speeds limited to 14.4Kbps? Would you do all you do now on the internet if you were limited to dialing up? No, of course not. The explosion of access to broadband internet has resulted in – for better or worse – blogging, Facebook, Twitter, Flickr, software installs via the web, regular updates to your operating system, browser wars, YouTube and streaming video, sharing of information and services, and so on, ad infinitum. Web software changed dramatically once fast internet was ubiquitous and no longer the province of the wealthy. Nowadays, we pretty much write software that assumes some kind of always-on connection, or we write software that can work anywhere so long as there’s a browser running it. What ideas do you have for software that need this always-there, fast internet?

    The smartphone (and tablet) form factor is another one of those technologies that, once it reached a certain tipping point, resulted in an explosion of different types of software and different kinds of apps. Just today, I typed “gas station” into Google Maps on my phone to get directions to the nearest gas station: the car was running on fumes and I didn’t know the area. What other kinds of apps do you rely on every day that would be impossible if you didn’t have this small computer in your pocket attached to some fast internet?

    Even more basic, just think of the software that’s now getting written in interpreted languages. Once the hardware got fast enough, and the computer science got clever enough, interpreted languages started being used all over the place, from server-side web apps to client-side apps in browsers. It’s not that long ago that Google showed the way with the V8 interpreter engine for JavaScript, meaning that client-side apps were valuable and fast enough for everyday use. And of course with interpreted apps, we’re now used to the speed and agility with which we can deploy changes to those apps (there’s no install!). Once the tech was there, the software and the way we use and deploy that software grew rapidly.

    And as a final example, let me point to the cloud. It wasn’t that long ago that putting your publicly-accessible servers on the internet (that same fast internet) was something only high-tech companies did, like Google and Amazon. Now the cloud (whatever your definition may be) is a commodity. Sure, you can store your photos “in the cloud” or your music (or even your license to listen to music that you don’t actually have locally on your hard disk as MP3s), but these days people are doing so much more: storing data and making it available, web sites, app servers, scalability, development, all on a pay-as-you-go type plan, rather than having to purchase servers for your own data center. The interesting thing about the cloud is that over the past year or so, it’s become almost ubiquitous and it’s certainly cheap. Are you a start-up? It’s cheaper to provision a few virtual servers from Microsoft or Amazon than to purchase the infrastructure to do it yourself. You are developers, not IT managers. Where this will lead, I’m not sure, but of one thing I am certain, this same fast internet plus the cloud will result (has resulted) in some new and innovative software.

    The basic problem is of course (a) spotting a technology that could/might/will turn mainstream (I, for example, am no clairvoyant), and (b) what kind of software could be designed and written to take advantage of that technology. Here’s a list of tech that is at least interesting, but not yet mainstream, what do you think?

    • Wearable computers, like Google Glass
    • Televisions, such as 4K TVs, Google Chromecast, Microsoft XBOX, etc
    • Automobile intelligence, such as performance monitoring, car-to-car communications
    • The connected home, for example, Nest
    • Big Data provisioning and processing (for some definition of Big Data)
    • 3D printing

    Which of those (or others) triggers that spark? What ideas do you have that, if only some technology X became prevalent, would mean giving up your day job for a chance at software fame and fortune?

LIVE CHAT

Chat is one of the many ways you can contact members of the DevExpress Team.
We are available Monday-Friday between 7:30am and 4:30pm Pacific Time.

If you need additional product information, write to us at info@devexpress.com or call us at +1 (818) 844-3383

FOLLOW US

DevExpress engineers feature-complete Presentation Controls, IDE Productivity Tools, Business Application Frameworks, and Reporting Systems for Visual Studio, along with high-performance HTML JS Mobile Frameworks for developers targeting iOS, Android and Windows Phone. Whether using WPF, ASP.NET, WinForms, HTML5 or Windows 10, DevExpress tools help you build and deliver your best in the shortest time possible.

Copyright © 1998-2017 Developer Express Inc.
All trademarks or registered trademarks are property of their respective owners