Algolia vs Elasticsearch in ecommerce [closed] - ruby-on-rails

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
I am adding react to a rails ecommerce website and also changing the search engine from sphynx to algolia. For this I am using react-instantsearch but I'm having a hard time integrating algolia's widgets mainly because the documentation is very unclear and I'm not sure how things are working behind the scenes. I was wondering if it would be better to use elasticsearch instead, as everything is more customisable, but I worry that the user experience will not be so spectacular.
Which one do you think is best in this situation?

Disclaimer: I'm an elastic employee
You should give a try to the site search offer that elastic provides. See https://www.elastic.co/solutions/site-search
It's a great way to get Site Search as a service without having to worry about the internals.
If you prefer to have more control but don't want to manage the cluster by yourself, have a look at https://cloud.elastic.co.
If you want to do all that manually or go to the open source only way, you can run an instance somewhere in the cloud and install elasticsearch manually.
I can't say about Algolia as I never used their service.

Disclaimer: I'm an Algolia employee.
You can achieve a very high degree of customization with Algolia and React InstantSearch. If you are having trouble customizing the widgets (which are designed to be drop-in) you can try Connectors instead:
Connectors are higher order components. They encapsulate the logic for a specific search concept and they provide a way to interact with the instantsearch context.
Internally, the widgets are just pre-packaged implementations of Connectors. If there is a particular widget/connector you are having an issue with, add a comment and I'm happy to look into it!

Related

Need to know about CMS [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
In Ruby On Rails which CMS gem support the more powerful features and fully customizable functionality.
I need to create an application that have an admin that create,update and edit, delete the pages.
And wants to use customizable CSS and additional functions like i can add inside application.
For e.g Count likes of an artical on page and sharing the page on facebook.
Your help and suggestions are definably appropriate.
Thanks for Help.
From my own experience I can recommend Refinery CMS which will fulfill most of your requirements. You can fully customize the CSS and it allows you to add Rails Engines to it on the one hand, but it can also be added to an existing application as a gem. You will have to do some work to get your counts and your Facebook sharing though.
I also once heard a talk from the creator of Locomotive CMS which at first sight seems somewhat more flexible, but you will need to invest some more time to get you started. It allows transferring a running site from development to production through a companion app whereas you have to develop your content "online" with Refinery CMS.
I guess your choice will be a matter of taste. There is of course a host of other possibilities listed in the Ruby Toolbox
To give some perspective, we recently created our own CMS from sratch
It's very simple to do - there are several tutorials online which explain the process
Basically, you need:
Models - Post, User, Option
Controllers - posts, application, users, admin: [application, posts]
Views - application(index), posts, admin: [application(index), posts]
Here are some resources:
http://therailworld.com/posts/12-How-to-Create-a-Blog-from-Scratch-Using-Ruby-on-Rails
http://sixrevisions.com/web-development/how-to-create-a-blog-from-scratch-using-ruby-on-rails/
http://railscasts.com/episodes/310-getting-started-with-rails?view=comments
http://guides.rubyonrails.org/getting_started.html

How can I create a cloud backend to update my iOS app? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I have a news application that i am in the process of building, and of course news updates a lot, so I have to constantly update my stories, so I need a backend of some sort that will let me update my stories over the air without updating the actual app.
I found Parse.com and they have some awesome stuff, but with the way my app is built I don't think I can use them.
I will have to update UIImageviews, UItextviews, and the names of Buttons. With Parse I can only seem to find help regarding the PFQueryTableViewController, which I could use this, but that requires completely recoding and some redesigning of my app to fit into that.
So unless there's another way, I guess I will suck it up and get to work.
So is there a simpler way to do this, or maybe a better service that works more towards what I'm describing?
What you are asking basically is how to do network communication. It sounds like to me you can do what you want with just Parse. You just store the images and text and then call the information from the parse backend when you are loading. From there you can update the UITextViews, button names, and UIImageViews however you want dynamically (using the .text, setTitle, and .image properties and methods respectively). You could also use Amazon S3 for image storage... but the API is less well documented for that.
This is probably your best bet, unless you really want to delve in more deeply and learn how to use NSURLConnection or AFNetworking to communicate with a back-end that you build on a django, ruby, etc. server that you host yourself on a server.

What stage to add authentication? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I'm about to start building a Rails app that will eventually need to vary CRUD access by user (i.e. which pages do they see, which can they edit, etc).
Is there a best stage of the development cycle to incorporate this?
Part of me feels like it should be the very first thing, since almost every piece of the interface will in some way rely on checking the user's ID, and it will be an inherent part of the DB structure.
Another part feels that this would overcomplicate things to start out with, and that I should instead build the core parts of the app, then layer on the authentication/authorization later.
Are there any best practices around this sort of thing?
I would say that if your system will rely on some kind of authentication... Why wait?
Let's say that you start developing your application without the authentication layer but at the same time you know that at some point you will have to do it. That means that at some point you will develop the authentication layer, and most likely you will have to refactor what you have already built to adapt it to this new layer.
Also, to try to convince you a little bit more...When you say:
I should instead build the core parts of the app
You should consider that the authentication module might be a core part of the app too...
I prefer to do it early, but you really have roughly the same amount of work in front of you regardless of when you do it. It really a matter of opinion on when you prefer to do it.

Which is a better gem for indextank? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I am using indextank with heroku. Which is a better gem to use, indextank or thinkingtank? I looked at the documentation, and tutorials for both,and it seems like thinkingtank is easier to use. A related/follow up question: what are the advantages/disadvantages of each?
It depends on what you're doing. If you are writing a simple app that's not based on ActiveRecord, the indextank client lets you add and search content without storing anything within your app. An example: if you are fetching tweets, you could index them directly without having a data model on your side. It's more "low level", so to speak.
If you are using ActiveRecord or another ORM, you should take a look at Tanker, it's more actively developed than ThinkingTank:
https://github.com/kidpollo/tanker
Hope this answers your question, if not please come chat with us at http://indextank.com (chat widget on the main page) and we'll be happy to help!
As Diego said, Tanker does seem like it has much going for it. Alternatively you could use IndexTanked:
https://github.com/zencoder/index-tanked
We wrote this library to power search on zencoder.com. Documentation is non-existant so far, but is coming.
One important feature included in IndexTanked, that was a necessity for us, was fault-tolerance. IndexTanked includes configurable fallback methods for use in case of failure to index, delete from the index, or search. Additionally, it limits calls to indextank by checking if the indexed fields have changed on updates. You can even obtain which fields we're checking against so you can select the minimum viable fields to be indexed when needed.
You can drop the author, Adam, a line at adam#zencoder.com if you have an questions (perfectly reasonable with the lack of docs).

Car make model dropdown web service [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I once found a slick looking car make/model dropdown menu web service that advertised form helpers for Ruby on Rails, have subsequently been unable to find this again by Googling for it.... Anybody know the service I am talking about?
Edmunds provides this data for free through an API. You just have to sign-up to get an API key.
See documentation here:
http://developer.edmunds.com/api-documentation/vehicle/
Sign-up to get a key here: http://developer.edmunds.com/index.html
One example of making the call (many more examples given on their site):
https://api.edmunds.com/api/vehicle/v2/makes?fmt=json&api_key={your API key}
I was looking for exactly this kind of information for motorcycles. From what I can tell the API does not provide motorcycle data, but it seems to have just about everything for cars - Make, Model, Year, Trim, Style, even Maintenance Schedules.
With the json or xml data, you will have to roll your own drop down menus. Edmunds does provide some premade widgets, but they are pretty specific (e.g. return True Market Value), so there is a good chance they won't have exactly what you need.
http://developer.edmunds.com/widgets_and_apps/index.html
It doesn't include form helpers or anything, but here's a Ruby implementation that uses the KBB database to retrieve make/model info:
http://tektastic.com/2008/03/car-or-auto-make-model-year-database.html
I'd probably cron this outside of the app and update the db from time to time, then use collection_select in the app to construct the dropdowns as normal. You could also adapt it to use ActiveResource for live retrieval, but that seems excessive and perhaps bannable by KBB.

Resources