Social networks in an Delphi win32 application - delphi

I want to create some kind “social” connection/interaction in an application that I am creating.
The application is for a restrict group of professionals, that would benefits for social connection/interaction with each other.
So now I don’t know what to do. Do something new, integrate with an existing one ?
I am open for ideas.
---- UPDATE ----
Some basic features should be:
•Private Messages
•Blog functionality
•Publications
•A user profile, with basic info
•Friends list
•Pools
Open source product, if possible.
Platform. For now yes win32 application. Later if the concept catch on we can go web. Be this is only an extra feature of a big application, not the main feature.

Your question is quite vague but I try to give you some pointers.
First you need to define what functionality you want in your application. You want a social network site for professionals so we can rule out the fluffy bits. But there are other aspects of a social network site that you maybe want to include:
Real time chat (one on one or multi, and do you want to include voice and view)
Private Messages (like email)
Discussions (like a discussion forum)
Blog functionality
Publications
A user profile, and what do you want to include.
Do we need to maintain a friends list?
And special purpose groups.
Then you need to decide if you are going to buy, take or make the software. Maybe you can adapt some open source product.
Then you need to decide on a platform. You have tagged this question delphi win32. But why not use a web based concept.
If you have more concrete problems, we are glad to help.

Looking at your requirements– you need a web based application
Use something like Drupal it can do all the basic features you require
And you will not have to write a single line of code.
It uses MySql as it’s database – and has hundreds of different plug-ins

Related

Serve single instance of a domain to subscriber audience with MODX

Can MODX serve a single site instance to a subscriber-based audience, whereby common elements are served to all users, while each individual subscriber's content is stored uniquely and presented in the front end only to them?
To clarify this scenario, consider a website that provides financial budgeting tools. In this example, a single instance of the website and its components is served to all users, simplifying maintenance, progressive design enhancements, etc., while each user's data (i.e. their financial details) is accessible only to them via log-in credentials.
The default MODX setup does not to support this example. Static elements can be used, but this alone doesn't cover the above scenario. So my question is whether MODX can support the above scenario, and if so, how it can be accomplished? I'm not looking for specific details -- but broadly, what options exist? If there are options, is it even a good choice for this kind of scenario?
MODX does an excellent job with common pages, and the built-in ACL system will allow you to differentiate access for any number of closed participants groups.
As for the user's personal data, there are two possible ways: create some custom code or use an existing one. Each of these paths will almost certainly extend the current user model and use it for your needs.
Here are a couple of useful links regarding your question:
https://docs.modx.com/current/en/extending-modx/custom-users
https://docs.modx.com/3.x/en/extras/login/login.tutorials/using-custom-fields
https://modx.com/extras/package/classextender

Creating OTRS web mobile interface

at the company where I work, we use OTRS to schedule tickets and such. But the web interface is not very intuitive and easy to use, particularly on mobile...
Is it possible to create my own mobile version of OTRS? I mean, I can create a website that is mobile optimised and easy to use, but is there an API to communicate with OTRS?
I've only seen simple scripts to create tickets via soap or rest interface, I need to create a ticket, show a list of the user tickets and close them, postpone them...
Thank you in advance
It is very much possible, since the OTRS is Open Source and you can basically do whatever you want with it. You might however underestimate the scope of the task you're talking about. I once thought about doing something like this too, but when you look at the functionality the OTRS is providing in the background and all the little details you need for a working interface you will probably come to the conclusion that it requires a LOT of work.
You could use the Generic Interface to create a Webservice that enables you to access ticket information etc. and build your own Frontend that utilizes the Webservice. I can tell you from experience that there is lots of functionality you need to add to the webservice to create a decent API for your Frontend, because the Information the Generic Interface offers by default is very limited.
Since OTRS Version 5 the software includes an interface with responsive design in order to make it better suited for mobile use. Depending on the version you are currently using you might consider upgrading to it. If you want to check it out first you can have a look at the online-demo they feature on their website: https://www.otrs.com/otrs-demo-trial/
If you like the concept of the OTRS but the interface makes it difficult to use for you, the founder of the OTRS released a different kind of ticket system called Zammad. You might want to check it out, it's interface is aimed at being more intuitive.
tl;dr
Yes, it's certainly possible - the OTRS is an open system, but very difficult and probably not worth the effort.

Avoiding tables (HTML) to show business information

I want to learn new techniques to show business information to my user.
I'm working in a management system that is a web aplication and it's been writen using MVC Razor .NET, Entity Framework and Angular JS.
In a particular page my client wants to see a bunch of information and he's used to use excel, so he asked me to make a table to keep the excel similarity. BUT here is the point I want to improve him experience.
I dont want to use tables, because it is a lot of information (at least 15 columns), I know that I can have some column selector so the user can choice what columns he wants to see and that kind of stuff but the problem is that is very import to him see all informations right away.
I wonder what kind of UX techniques, methods or frameworks I can use to give him a better experience.
Thank you.
That's what tables are meant for. If you are looking to make it clean and easy to manage I would use bootstrap and maybe a jquery plugin like the following:
Bootstrap Example
http://getbootstrap.com/css/#tables
http://www.datatables.net/

Web framework with really good admin/CRUD module?

Lot's (if not most) of the current Web frameworks provide an admin module for basic CRUD operations, but I find the ones I know usually very limited...
So, my question is, which Web framework out there provide the best administration backend?
By the best, I mean namely:
Domain objects that can be heavily polymorphic. Attributes/relations defined in a class appear when editing a record/instance of any of it's subclasses (and sub-subclasses, and sub-sub-subclasses, etc).
Abstract classes. It's ok to have abstract classes anywhere in the domain classes' hierarchy. Their attributes and relations also show in the records/instances of all descending classes.
Relations. Allow to edit (out-of-the-box) the records/instances that have many-to-many relations, and relations with associative classes (e.g., django calls these intermediate models)
Extension. Allow to extend the admin so that we can use our own "UI controls" for specific domain objects. Some information is just too "exquisite" for an out-of-the-box form-based control to work in a suitable way.
UI Components. Instead of having to choose between using all of it or none of it, it'd be nice to have generic "UI controls" that one could reuse from within any page of the website, to edit specific domain objects.
Programming language is not an issue at this point, although I lean towards the languages (or frameworks) that allow me to express the most information at the domain model level (and that the admin module can then use to give me a richer UI).
I've been playing with Active Admin and Rails Admin for a couple of Rails 3.1 projects I am working on. While both are nice, I've migrated more and more to Rails Admin. I've found it easy to customize, it does a very nice job with associated models, and has a great default UI.
Rails Admin
Definitely good old WebObjects with it rule system called DirectToWeb. It generates everything at runtime based on rules. By default it can display all your entity's properties and relationships.
I guess that every current web framework will offer something like scaffolding, but often times, the work begins as soon as you change your model.
Check out this post and this teaser about the latest DirectToWeb-based framework, ERModern. You use nearly zero code for what you see in the video and you can build entire applications around it. It was sponsored by the iTunes team.
Edit for your bullet points:
Abstract classes and domain objects that can be heavily polymorphic - You handle these using rules.
Editing relations - No problem, it only depends on the design of your components. If you use ERModern, you get this for free.
Generic UI components - This is exactly how DirectToWeb works. You use (or define your own) generic components that display themselves according to the current entity (an object inheriting from EOEnterpriseObject) and the rules that fired for the current state (the D2WContext, essentially a big dictionary).
You can see all of this in action in the 45 minutes long ERModern Intro Video.
This isn't an easy question to answer.
You never specify what language you want to use, and you named some features, but how much of these features do you want.
I mean I could suggest a number of frameworks and tools for ASP.Net MVC or Web Forms but what if you're a PHP developer or a Java developer?
I could suggest SharePoint (and I generally dislike sharepoint, but everything you want is in SharePoint), but then the question to ask is.
How much flexibility and freedom do you want to customize or how much do you want the framework to do and you just be a code monkey.
So I will give you just my opinion.
I use ASP.Net MVC for my custom apps. It does all of what you want and allows me the most freedom to create and extend with tools if I so to do so. Plus out of the box there's a user databse with roles I can easily create out of the boss once I run the app for the first time.
Also CRUD is completely easy and straight forward out of the box. just check it out http://www.asp.net/mvc there's a tutorial section that goes through what you're wanting that you could complete in half a day.
Then there are some OR/M like NHibernate, Entity Framework, Subsonic use www.google.com to find tutorials for these if you're not familiar with them.
Then there's SharePoint it has a learning curve but once you get past it it's pretty straight forward as it's easy to pinpoint bugs, focus on the business logic and not worry aobut data base schema (as you don't even need to touch a database).
I love WebObjects.
WebObjects -> EntityModeler -> Wonder -> ERD2WModernLook -> ERAttachment --> ERRest
Bam. Done.

Company website - devise a custom-built solution or ride on top of an existing service?

I've been asked to devise a website for a small organization (with limited funding) - with internal and external facing sides.
Internally it would allow sharing of documents, a blog, goal setting, more?
Externally it would provide a simple but nicely designed public statement about the company's services.
It may evolve over time.
Should this be a custom-built solution or does it make more sense to ride on top of a platform that provides this type of service (such as?)?
If it's a custom built-solution, I'm considering doing this in Rails - would there be something like this already built for Rails?
I've always found it frustrating to build on top of pre-existing platforms, especially when it comes time to extend the functionality. If it's up to you, I'd suggest to build it yourself. Pick a framework and design specifically around the needs of the company.
Rails is a nice choice if you're comfortable programming Ruby. Although, any modern MVC framework would be just as good.
I'm quite a big fan of Hobo. Sits on top of and extends Rails. Provides a lot of standard scaffolding, an admin function and section, and lets you publish static pages. You can stick a "before_filter :login_required" on any and all controllers to prevent random visitors from seeing things, or extend the user model to have role or other based access controls.
I've never used Hobo to fully build out a scaled service for more than a handful of users. But in a small environment, it's awesomely fast to put together resources, with access controls.
Django has an amazing admin function already built into the framework. It could potentially take care of all of the internals, and the external view can be shown to anyone who doesn't navigate to the admin.
It's at least one consideration if you're thinking of making a custom solution (which I might suggest if you believe the site will most likely grow.)
Depending on your resources, I would start off with an "as-is" solution that allows customization. This will give you the quickest "wins" from the company standpoint. Once the organization, and you, start to use and understand the benefits, you can start customizing pieces.
Depending on your budget Windchill does this. I believe it was once called GlobalVault (a much better, and more descriptive, name).

Resources