Fork me on GitHub
#off-topic
<
2018-09-30
>
uppal6201:09:23

How to connect with Amazon Neptune graph from my clojure app?

sova-soars-the-sora17:09:15

After not being able to find a job programming, I've decided to start my own firm ^_^

Digital Baboon17:09:04

One could say that's even harder to do than finding a job.

sova-soars-the-sora17:09:49

That depends on a lot of factors my friend. Many may be better off piling into already extant caravans, some may be better off building new vehicles

Digital Baboon17:09:35

I'm not advocating against anything here. I'm a big believer in that everybody should do whatever makes them happy. Just from my personal experience, starting a company is hard. But, then again, I'm not that well versed in business to begin with.

sova-soars-the-sora17:09:19

My idea is to offer two options to clients: a monthly subscription cost that includes ongoing development and maintenance, and a single per-project fee if that's more agreeable. I think the subscription model is a good way to encourage some semblance of a passive income flow

sova-soars-the-sora17:09:44

Passive Income Flow being the only real solution for financial freedom, in my opinion

emccue17:09:31

in the days of the puritans freedom was more defined as a "freedom from x" so "freedom from alcohol"

emccue17:09:51

the other version of "freedom" was associated with the word "license"

emccue17:09:27

I think you are 100% right about passive income

emccue17:09:49

I'm just not sure if it will give you financial freedom or freedom from finances

4
vemv00:10:29

Whatever you do, don't sign fixed bid contracts ("we pay you 5K, you complete the project whatever effort it takes")

☝️ 8
lemontea06:10:48

and the reason that’s a trap is due to the project management triangle, or the four variable theory (http://wiki.c2.com/?FourVariables ). With fixed bid, resources and time (and implicitly scope) is already fixed, so you end up sacrificing quality (plus some linear combination of the other factors anyway)

🔝 16
sova-soars-the-sora16:10:57

resources, scope, quality, time. nice abstraction

sova-soars-the-sora17:09:11

(kind of a personal, "duh!" moment)

emccue17:09:30

My personal opinion is that clojure wrappers aren't always necessary. Just start with using the official java solution via interop

4
emccue17:09:07

in this case it seems like org.apache.tinkerpop.gremlin is the way to go

emccue17:09:23

I think the clojure version is probably good too

emccue17:09:40

certainly has a cool logo

🙂 4
emccue18:09:14

(also when i say "version" thats not really accurate)

emccue18:09:21

(most good clojure libraries exist to make a data driven interface over some existing api)

emccue18:09:34

(they don't rewrite the api itself; parasitism is the name of the game)

uppal6218:09:45

thanks @emccue for the reply. I already explored tinkerpop java API. but due to its intensive use of varargs, using it via interop isn't easy. I also came across Ogre, which essentially is just a wrapper around tinkerpop java api. But only example I could find was using TinkerGraph. can u help me in finding some Ogre example that connects with a remote gremlin server (doesn't need to be Neptune) ? . I actually already started writing my own wrapper around tinkerpop so that I can use it in my clojure app. but if I find some pre-written one, I would hate to re-invent the wheel.

emccue18:09:53

might have to help me understand some of the domain here

emccue18:09:06

i dont know what any of these services are for exactly

uppal6218:09:32

this all is related to graph data

emccue18:09:31

look at the aws example

emccue18:09:44

They show how to construct a GraphTraversalSource with a remote root

emccue18:09:00

that should be simple enough to do with interop

emccue18:09:48

From there it looks like all the functions in ogre just take a GraphTraversalSource

emccue18:09:29

so, it might be as simple as that

uppal6218:09:38

ok, u mean to construct GraphTraversalSource using interop, and use Ogre from thereon .. nice. thanks for the tip, will certainly try

emccue19:09:48

(let me know how/if that works. I am somewhat curious now)