I used Outsytems for a while due to company's new direction.
So far I found out that Outsytems is quite good in assisting even the newest/dullest programmers with developing a clean and maintainable data layers as well as readable logic. Even creating workflow is a breeze if you keep it within OutSystem.
TLDR: even the 'most newbiest' programmer can create a decent application using Outsystems.
User interface
One hiccup I have encountered so far is when we want to create a rather complex user interface (javascript plugins etc) that looks very different from Intelliwrap template.
Just like in any IT sales talk, "It can be done!" - it can always be done - but expect a lot of trial and error. The behaviors of javascript, css and such can be unpredictable at times - especially if you try to override most of the interface portion of the Outsystems.
Note that there are not many tutorial / forum post that discuss user interface aspect of Outsystems throughly since it is indeed difficult and in most aspect quite annoying.
Automated test
Another aspect that bother me is that the difficulty of creating a test driven development environment. In most cases, automated testing environment is almost impossible to set up.
Yes there are plugins and such but expect no support or whatsoever to set it up. Nuno from Outsystems has kindly showed me how Outsystems use automated testing tools on their platform development. However, this portion is not for everyone as it is very difficult to set up. Be prepared to do manual testing when doing development using Outsystems (e.g. hire lots of interns)
In our case, the problem of setting up testing tool is amplified since we are not using inteliwarp and default Outsystems UI component.
Doing agile development without automated testing is a bit weird - similar to visiting McDonalds that does not offer fries.
Talent shortage
Another issue that you might encounter when dealing with Outsystems will be possible bottlenecks due to limited supply of people with required skills.
Outsystems staff will help you as much as they can but when it comes to some kind of exotic integration with other systems or doing your own hacking (e.g. UI/database/etc) be prepared to be on your own. Google or Stackoverflow will not be of much help. As per today, only fewer than 20 questions are tagged with 'Outsystems' in Stack Overflow. Forget to find sample in Github.
You can always go to their community site which is quite active. However, be prepared to be on your own when you want to do something more than just standard Outsystems application.
In some cases, expert developers might find using Outsystems studio is nothing short of insulting and does not contribute much to their personal career development (e.g. limited job opportunities, depreciating original skills).
No matter what, you will almost never be able to find developer who can jump into the team doing Outsystems project immediately without prior training. This problem will be amplified if you plan to do a lot of modification and custom development.
Version control
Outsystems platform is bundled with its own code repository / version control mechanism but do not expect something like SVN or GIT. To be fair it is good enough for most cases but merging. The merging action is done at the file/component level. Outsystems can only detect if the file/component has been changed. The merging mechanism is essentially overwriting the entire file. No such thing as line-by-line code comparison/insertion/deletion (there is no code anyway).
Reverting to the older version of your work can be quite troublesome imho.
Documentation / knowledge sharing
Depending on your company culture, documenting or sharing best practice / cookbook / step-by-step instruction might be a bit hard due to the need of capturing screenshots all the time.
TLDR If you just want to create simple CRUD systems with standard UI, just like any enterprise application, Outsystems will do its job well - very well indeed. Just do not expect too much of bell and whistles and remember: any custom development and alteration to the default framework will cost you (or your developer) dearly.
我发现的唯一问题是它目前与 .NET 4 和 Visual Studip 2008 不兼容。我被告知它已在路线图上。如果您的代码必须使用 .NET 4 才能获得支持,您可以轻松地将其包装在 WCF 服务中,并直接在 Service Studio 中导入该服务。这就是我所做的,事实证明这是一个很大的好处,因为 .NET 4 代码非常耗费资源,所以我现在有了一些可扩展性选项。
希望这有帮助!
杰贾
I've been using it to put together a project, and I am extremely happy with it. It makes 90% of a project extremely easy; it takes the advantages of an ORM but integrates it beautifully into the development system, the lifecycle is great on a project. I like the deployment/versioning/rollback story. Anything that falls outside of its realm is very easy to handle in Visual Studio using the Integration Studio.
I've found a couple of minor bugs along the way, but I have to say that the support team has been EXTREMELY responsive to them, even though I am an unpaying, "Community Edition" member. The support in the forums, both from OutSystems and from the other users has been outstanding.
The ONLY hitch that I've found, is that it currently is no compatible with .NET 4 and Visual Studip 2008. I've been told that it is on the roadmap. If you have code that must use .NET 4 before they get that support in, you can easily wrap it in a WCF service and import that service directly in Service Studio. This is what I did, and it turned out to be a big benefit since the .NET 4 code was very resource intensive so I now have some scalability options.
Totally Agreed This product is a nightmare. I'm a external freelance consultant developing projects for various clients across Africa and US. Recently one of my client wanted me to develop custom product for his business in Durban. With just 2 days of testing the code I suggested my client that OUTSYSTEMS product would be worst possible solution for any business and there would be no scope for the future.
CONS 1. Not User Friendly as they proclaim in OUTSYSTEMS.com 2. Take Horrible amount of time to do simple Operations 3. Very pathetic video tutorials and really irritates to hear the VO of explaining a simple operation 4. Confuses users to do simple operations 5. Compatibility Issues with versions. 6. Integration Issues with multiple third parties 7. Tons of bugs while using Integration studio as system freezes 8. Cannot build Custom Templates and designs 9. Cannot import simple layouts inside the system 10. Would be nightmare for scalability and controlls
Every development tool/language/stack/... involves some tradeoffs at some point. Therefore, depending on what you're looking for, or particularly interested in, you may consider some aspect of a platform as an unforgivable pitfall where others might see it as a godsend blessing, or vice-versa. Thus, only by knowing what you really like and what you consider essential, may I try to guess what you'll miss and what you'll consider a pitfall.
Since we usually only notice the lack of something the first time we try to use it, I'd recommend trying to use the platform to hack something at your will without following the tutorials and the courses to the letter. If while creating something different you find anything you dislike, we'll be happy to hear it from you!
TL;DR: If you think the tutorials for a tool aren't showing you something, play with it a bit without following them.
I've been using the platform for > 2.5 years now and haven't found any serious shortcomings.
I've been implementing several projects (mostly data management and/or integration type applications) and have been very successful with the platform ...
The worst AGILE product I have come across. This product is surely not for those who want some kind of intelligence. The product is more a gimmick and I presume this is only good to develop a website.
If you are a serious developer and developing a custom build solutions like supply chain or ERP based application, seriously consider using any opensource or even an excel sheet, or better start using old book keeping style and it's worth it. You will get stressed with the product and the pricing
发布评论
评论(6)
由于公司的新方向,我使用了 Outsytems 一段时间。
到目前为止,我发现 Outsytems 非常擅长帮助最新/最迟钝的程序员开发干净且可维护的数据层以及可读逻辑。如果将其保留在 OutSystem 中,甚至创建工作流程也会变得轻而易举。
TLDR:即使是“最新”的程序员也可以使用 Outsystems 创建一个像样的应用程序。
用户界面
到目前为止,我遇到的一个问题是当我们想要创建一个看起来与 Intelliwrap 模板非常不同的相当复杂的用户界面(javascript 插件等)时。
就像任何 IT 销售演讲一样,“这是可以做到的!” - 它总是可以完成 - 但需要进行大量的尝试和错误。 javascript、css 等的行为有时可能是不可预测的 - 特别是当您尝试覆盖 Outsystems 的大部分界面部分时。
请注意,没有太多教程/论坛帖子全面讨论 Outsystems 的用户界面方面,因为它确实很困难,而且在大多数方面都很烦人。
自动化测试
困扰我的另一个方面是创建测试驱动开发环境的困难。在大多数情况下,自动化测试环境几乎不可能建立。
是的,有插件等,但期望没有支持或任何设置它。 Outsystems 的 Nuno 向我展示了 Outsystems 如何在其平台开发中使用自动化测试工具。然而,这部分并不适合所有人,因为它很难设置。使用 Outsystems 进行开发时准备好进行手动测试(例如雇用大量实习生)
在我们的案例中,由于我们没有使用 inteliwarp 和默认的 Outsystems UI 组件,因此设置测试工具的问题被放大。
在没有自动化测试的情况下进行敏捷开发有点奇怪——就像去不提供薯条的麦当劳一样。
人才短缺
在与外部系统打交道时,您可能会遇到的另一个问题是,由于具有所需技能的人员供应有限,可能会出现瓶颈。
Outsystems 的工作人员将尽可能地帮助您,但是当涉及到与其他系统的某种奇异集成或进行您自己的黑客攻击(例如 UI/数据库/等)时,请准备好独自一人。 Google 或 Stackoverflow 不会有太大帮助。截至目前,Stack Overflow 中只有不到 20 个问题被标记为“Outsystems”。忘记在 Github 中查找示例。
您可以随时访问他们的社区网站,该网站非常活跃。但是,当您想做的不仅仅是标准 Outsystems 应用程序之外的事情时,请做好独自一人的准备。
在某些情况下,专家开发人员可能会发现使用 Outsystems studio 无异于侮辱,并且对他们的个人职业发展没有多大贡献(例如,工作机会有限、原有技能贬值)。
无论如何,你几乎永远找不到能够在没有事先培训的情况下立即加入团队进行 Outsystems 项目的开发人员。如果您计划进行大量修改和定制开发,这个问题将会被放大。
版本控制
Outsystems 平台捆绑了自己的代码存储库/版本控制机制,但不要期望像 SVN 或 GIT 那样的东西。公平地说,它对于大多数情况来说已经足够好了,但不能合并。合并操作是在文件/组件级别完成的。外部系统只能检测文件/组件是否已更改。合并机制本质上是覆盖整个文件。没有逐行代码比较/插入/删除之类的事情(反正没有代码)。
恕我直言,恢复到旧版本的工作可能会很麻烦。
文档/知识共享
根据您的公司文化,记录或共享最佳实践/食谱/分步说明可能会有点困难,因为需要始终捕获屏幕截图。
TLDR
如果您只想创建具有标准 UI 的简单 CRUD 系统,就像任何企业应用程序一样,Outsystems 会很好地完成它的工作 - 确实非常好。只是不要期望太多花哨的东西,并记住:任何自定义开发和对默认框架的更改都会让您(或您的开发人员)付出高昂的代价。
I used Outsytems for a while due to company's new direction.
So far I found out that Outsytems is quite good in assisting even the newest/dullest programmers with developing a clean and maintainable data layers as well as readable logic. Even creating workflow is a breeze if you keep it within OutSystem.
TLDR: even the 'most newbiest' programmer can create a decent application using Outsystems.
User interface
One hiccup I have encountered so far is when we want to create a rather complex user interface (javascript plugins etc) that looks very different from Intelliwrap template.
Just like in any IT sales talk, "It can be done!" - it can always be done - but expect a lot of trial and error. The behaviors of javascript, css and such can be unpredictable at times - especially if you try to override most of the interface portion of the Outsystems.
Note that there are not many tutorial / forum post that discuss user interface aspect of Outsystems throughly since it is indeed difficult and in most aspect quite annoying.
Automated test
Another aspect that bother me is that the difficulty of creating a test driven development environment. In most cases, automated testing environment is almost impossible to set up.
Yes there are plugins and such but expect no support or whatsoever to set it up. Nuno from Outsystems has kindly showed me how Outsystems use automated testing tools on their platform development. However, this portion is not for everyone as it is very difficult to set up. Be prepared to do manual testing when doing development using Outsystems (e.g. hire lots of interns)
In our case, the problem of setting up testing tool is amplified since we are not using inteliwarp and default Outsystems UI component.
Doing agile development without automated testing is a bit weird - similar to visiting McDonalds that does not offer fries.
Talent shortage
Another issue that you might encounter when dealing with Outsystems will be possible bottlenecks due to limited supply of people with required skills.
Outsystems staff will help you as much as they can but when it comes to some kind of exotic integration with other systems or doing your own hacking (e.g. UI/database/etc) be prepared to be on your own. Google or Stackoverflow will not be of much help. As per today, only fewer than 20 questions are tagged with 'Outsystems' in Stack Overflow. Forget to find sample in Github.
You can always go to their community site which is quite active. However, be prepared to be on your own when you want to do something more than just standard Outsystems application.
In some cases, expert developers might find using Outsystems studio is nothing short of insulting and does not contribute much to their personal career development (e.g. limited job opportunities, depreciating original skills).
No matter what, you will almost never be able to find developer who can jump into the team doing Outsystems project immediately without prior training. This problem will be amplified if you plan to do a lot of modification and custom development.
Version control
Outsystems platform is bundled with its own code repository / version control mechanism but do not expect something like SVN or GIT. To be fair it is good enough for most cases but merging. The merging action is done at the file/component level. Outsystems can only detect if the file/component has been changed. The merging mechanism is essentially overwriting the entire file. No such thing as line-by-line code comparison/insertion/deletion (there is no code anyway).
Reverting to the older version of your work can be quite troublesome imho.
Documentation / knowledge sharing
Depending on your company culture, documenting or sharing best practice / cookbook / step-by-step instruction might be a bit hard due to the need of capturing screenshots all the time.
TLDR
If you just want to create simple CRUD systems with standard UI, just like any enterprise application, Outsystems will do its job well - very well indeed. Just do not expect too much of bell and whistles and remember: any custom development and alteration to the default framework will cost you (or your developer) dearly.
我一直在用它来整合一个项目,我对此非常满意。它使项目 90% 的工作变得极其简单;它利用了 ORM 的优点,但将其完美地集成到开发系统中,项目的生命周期非常好。我喜欢部署/版本控制/回滚故事。任何超出其范围的事情都可以在 Visual Studio 中使用 Integration Studio 轻松处理。
一路上我发现了一些小错误,但我不得不说,支持团队对这些错误反应非常积极,尽管我是一个不付费的“社区版”会员。论坛中来自 OutSystems 和其他用户的支持非常出色。
我发现的唯一问题是它目前与 .NET 4 和 Visual Studip 2008 不兼容。我被告知它已在路线图上。如果您的代码必须使用 .NET 4 才能获得支持,您可以轻松地将其包装在 WCF 服务中,并直接在 Service Studio 中导入该服务。这就是我所做的,事实证明这是一个很大的好处,因为 .NET 4 代码非常耗费资源,所以我现在有了一些可扩展性选项。
希望这有帮助!
杰贾
I've been using it to put together a project, and I am extremely happy with it. It makes 90% of a project extremely easy; it takes the advantages of an ORM but integrates it beautifully into the development system, the lifecycle is great on a project. I like the deployment/versioning/rollback story. Anything that falls outside of its realm is very easy to handle in Visual Studio using the Integration Studio.
I've found a couple of minor bugs along the way, but I have to say that the support team has been EXTREMELY responsive to them, even though I am an unpaying, "Community Edition" member. The support in the forums, both from OutSystems and from the other users has been outstanding.
The ONLY hitch that I've found, is that it currently is no compatible with .NET 4 and Visual Studip 2008. I've been told that it is on the roadmap. If you have code that must use .NET 4 before they get that support in, you can easily wrap it in a WCF service and import that service directly in Service Studio. This is what I did, and it turned out to be a big benefit since the .NET 4 code was very resource intensive so I now have some scalability options.
Hope this helps!
J.Ja
完全同意
这个产品是一场噩梦。我是一名外部自由顾问,为非洲和美国的各种客户开发项目。最近,我的一位客户希望我为他在德班的业务开发定制产品。仅用 2 天测试代码,我就向客户建议,OUTSYSTEMS 产品对于任何企业来说都是最糟糕的解决方案,而且未来没有发展空间。
缺点
1. 正如他们在 OUTSYSTEMS.com 中宣称的那样,用户不友好
2. 花费大量时间来完成简单的操作
3.非常可怜的视频教程,听到解释简单操作的VO真的很烦人
4、迷惑用户进行简单操作
5.版本兼容性问题。
6. 与多个第三方的集成问题
7. 使用 Integration studio 时系统冻结时出现大量错误
8. 无法构建自定义模板和设计
9. 无法导入系统内部的简单布局
10. 对于可扩展性和控制来说将是一场噩梦
Totally Agreed
This product is a nightmare. I'm a external freelance consultant developing projects for various clients across Africa and US. Recently one of my client wanted me to develop custom product for his business in Durban. With just 2 days of testing the code I suggested my client that OUTSYSTEMS product would be worst possible solution for any business and there would be no scope for the future.
CONS
1. Not User Friendly as they proclaim in OUTSYSTEMS.com
2. Take Horrible amount of time to do simple Operations
3. Very pathetic video tutorials and really irritates to hear the VO of explaining a simple operation
4. Confuses users to do simple operations
5. Compatibility Issues with versions.
6. Integration Issues with multiple third parties
7. Tons of bugs while using Integration studio as system freezes
8. Cannot build Custom Templates and designs
9. Cannot import simple layouts inside the system
10. Would be nightmare for scalability and controlls
免责声明:我在 OutSystems 工作
每个开发工具/语言/堆栈/...在某些时候都涉及一些权衡。因此,根据您正在寻找的内容或特别感兴趣的内容,您可能会将平台的某些方面视为不可原谅的陷阱,而其他人可能会将其视为天赐之福,反之亦然。因此,只有了解您真正喜欢什么以及您认为重要的是什么,我才能尝试猜测您会错过什么以及您会认为什么是陷阱。
由于我们通常只会在第一次尝试使用它时才注意到缺少某些内容,因此我建议尝试使用该平台随意破解某些内容,而无需严格遵循教程和课程。如果在创造不同的东西时您发现任何您不喜欢的东西,我们将很高兴收到您的来信!
TL;DR:如果您认为某个工具的教程没有向您展示一些内容,请尝试一下,而不是遵循它们。
DISCLAIMER: I work for OutSystems
Every development tool/language/stack/... involves some tradeoffs at some point. Therefore, depending on what you're looking for, or particularly interested in, you may consider some aspect of a platform as an unforgivable pitfall where others might see it as a godsend blessing, or vice-versa. Thus, only by knowing what you really like and what you consider essential, may I try to guess what you'll miss and what you'll consider a pitfall.
Since we usually only notice the lack of something the first time we try to use it, I'd recommend trying to use the platform to hack something at your will without following the tutorials and the courses to the letter. If while creating something different you find anything you dislike, we'll be happy to hear it from you!
TL;DR: If you think the tutorials for a tool aren't showing you something, play with it a bit without following them.
我一直在使用该平台>到现在2.5年了,还没有发现任何严重的缺点。
我已经实施了多个项目(主要是数据管理和/或集成类型应用程序),并且该平台非常成功...
如果您有具体问题,请随时与我联系:http://www.linkedin.com/in/stefanmeier
干杯,
斯特凡
I've been using the platform for > 2.5 years now and haven't found any serious shortcomings.
I've been implementing several projects (mostly data management and/or integration type applications) and have been very successful with the platform ...
Feel free to contact me if you have specific questions: http://www.linkedin.com/in/stefanmeier
Cheers,
Stefan
我遇到过的最糟糕的敏捷产品。
该产品肯定不适合那些想要某种智能的人。该产品更多的是一个噱头,我认为这只适合开发一个网站。
如果您是一名认真的开发人员,正在开发自定义构建解决方案,例如供应链或基于 ERP 的应用程序,请认真考虑使用任何开源软件甚至 Excel 工作表,或者最好开始使用旧的记账方式,这是值得的。您会对产品和定价感到压力
The worst AGILE product I have come across.
This product is surely not for those who want some kind of intelligence. The product is more a gimmick and I presume this is only good to develop a website.
If you are a serious developer and developing a custom build solutions like supply chain or ERP based application, seriously consider using any opensource or even an excel sheet, or better start using old book keeping style and it's worth it. You will get stressed with the product and the pricing