I am wondering whether Neo4j would consider creating a Neo4j course available for free online, such as those available through Coursera (
www.coursera.org)
Currently I am studying Scala though just such a course and finding it very beneficial and enjoyable.
Let me describe my situation; I am in Melbourne, Australia and am interested in Neo4j. And I believe it would be a valuable capability to introduce to my workplace. However as a ‘techie’ (developer) I also recognize that I’ve found a ‘hammer’ and now see lots of ‘nails’ around me.
Thus I wish to improve my understanding and skills in Neo4j before attempting to talk to people at work about the beautiful ‘hammer’ I’ve discovered. :) Especially as this puts me in a position of being better able to answer my colleagues questions.
Possible paths to this goal are to install Neo4j on my laptop at home and work through the tutorials; view the variety of presentations on Neo4j - by the way I did enjoy the Dr Who one and Michael Hunger’s one about Cypher recently. Or I could attend Skills Matter in London for a 2 day tutorial (
http://skillsmatter.com/course/nosql/neo4j-tutorial); which would be a trifle expensive including the airfares. There is a local workshop coming up (
http://www.yowconference.com.au/general/workshopDetails.html?eventId=...), but it is not Neo4j focussed.
The other options are expensive for me, and chicken and egg like, I would need to convince management of the value before being able to get them to invest in such training.
What struck me is that if an online course was available, I could complete this in my own time outside work. I would end up with a certificate that establishes two things; my credibility in asserting a level of knowledge about Neo4j and that I’m interested enough to put in the effort to learn this product. I believe these bona fides would help greatly when talking to my colleagues.
Of course, I also think such a course would be advantageous to Neo4j to act as an intermediary stepping stone for people interested in Neo4j and improve its chances of adoption in enterprises.
Regards,
John
By the way if this is the wrong place for such a posting my apologies in advance.*
I had started building such a course however got sidetracked. I am more
than willing to provide what I have done to any open source project or help
you for a commercial course.
Duane
***********************************
Technoracle Advanced Systems Inc.
Consulting and Contracting; Proven Results!
i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
b. http://technoracle.blogspot.com t. @duanechaos
"Don't fear the Graph! Embrace Neo4J"
From: JohnM <jxmit...@gmail.com>
Reply-To: <neo4j@googlegroups.com>
Date: Saturday, 6 October, 2012 7:20 AM
To: <neo4j@googlegroups.com>
Subject: [Neo4j] Neo4j - online course
Hi,
I am wondering whether Neo4j would consider creating a Neo4j course
available for free online, such as those available through Coursera
(www.coursera.org <http://www.coursera.org/> )
Currently I am studying Scala though just such a course and finding it very
beneficial and enjoyable.
Let me describe my situation; I am in Melbourne, Australia and am interested
in Neo4j. And I believe it would be a valuable capability to introduce to my
workplace. However as a Œtechie¹ (developer) I also recognize that I¹ve
found a Œhammer¹ and now see lots of Œnails¹ around me.
Thus I wish to improve my understanding and skills in Neo4j before
attempting to talk to people at work about the beautiful Œhammer¹ I¹ve
discovered. :) Especially as this puts me in a position of being better able
to answer my colleagues questions.
The other options are expensive for me, and chicken and egg like, I would
need to convince management of the value before being able to get them to
invest in such training.
What struck me is that if an online course was available, I could complete
this in my own time outside work. I would end up with a certificate that
establishes two things; my credibility in asserting a level of knowledge
about Neo4j and that I¹m interested enough to put in the effort to learn
this product. I believe these bona fides would help greatly when talking to
my colleagues.
Of course, I also think such a course would be advantageous to Neo4j to act
as an intermediary stepping stone for people interested in Neo4j and improve
its chances of adoption in enterprises.
Regards,
John
By the way if this is the wrong place for such a posting my apologies in
advance.
John,
we have been thinking about this - seems like a great activity. I
would gladly invest some time into making it happen.
Do you have any suggestions on how to make it work? AFAIK, the Scala
course is a combination of videos with SBT-based exercises that test
the solutions to a number of challenges. Is that what would be enough
to start with?
Would you care to write down a wish-list and maybe to review material
that could be used? If Duane and others can pitch in, I would love to
make that happen.
On Sat, Oct 6, 2012 at 7:20 AM, JohnM <jxmit...@gmail.com> wrote:
> Hi,
> I am wondering whether Neo4j would consider creating a Neo4j course
> available for free online, such as those available through Coursera
> (www.coursera.org)
> Currently I am studying Scala though just such a course and finding it very
> beneficial and enjoyable.
> Let me describe my situation; I am in Melbourne, Australia and am interested
> in Neo4j. And I believe it would be a valuable capability to introduce to my
> workplace. However as a ‘techie’ (developer) I also recognize that I’ve
> found a ‘hammer’ and now see lots of ‘nails’ around me.
> Thus I wish to improve my understanding and skills in Neo4j before
> attempting to talk to people at work about the beautiful ‘hammer’ I’ve
> discovered. :) Especially as this puts me in a position of being better able
> to answer my colleagues questions.
> Possible paths to this goal are to install Neo4j on my laptop at home and
> work through the tutorials; view the variety of presentations on Neo4j - by
> the way I did enjoy the Dr Who one and Michael Hunger’s one about Cypher
> recently. Or I could attend Skills Matter in London for a 2 day tutorial
> (http://skillsmatter.com/course/nosql/neo4j-tutorial); which would be a
> trifle expensive including the airfares. There is a local workshop coming up
> (http://www.yowconference.com.au/general/workshopDetails.html?eventId=...),
> but it is not Neo4j focussed.
> The tutorials and presentations approach is free.
> The other options are expensive for me, and chicken and egg like, I would
> need to convince management of the value before being able to get them to
> invest in such training.
> What struck me is that if an online course was available, I could complete
> this in my own time outside work. I would end up with a certificate that
> establishes two things; my credibility in asserting a level of knowledge
> about Neo4j and that I’m interested enough to put in the effort to learn
> this product. I believe these bona fides would help greatly when talking to
> my colleagues.
> Of course, I also think such a course would be advantageous to Neo4j to act
> as an intermediary stepping stone for people interested in Neo4j and improve
> its chances of adoption in enterprises.
> Regards,
> John
> By the way if this is the wrong place for such a posting my apologies in
> advance.
Yes the Scala course is a combination of short videos and then assignments that are loaded for automatic marking via SBT.
I'm not sure how best to deliver a course, for example I don't know what the criteria are to get a course accepted in Coursera, However I think that is the second problem to be solved. The first is what to teach. :)
I will think about my wish list/thoughts for a Neo4j course and post it tomorrow.
MongoDB guys are organizing something similar, with separate free online
training offerings for developers and admins (see
http://www.10gen.com/training ).
Maybe you can make course on a bit higher level, like functional
programming course is organized - it's about functional programming, but
with examples in Scala.
Similarly, you could make Graph DBs course, with examples in Neo4j.
On Mon, Oct 8, 2012 at 11:54 AM, JohnM <jxmit...@gmail.com> wrote:
> Hi Duane and Peter,
> thank you for your comments.
> Yes the Scala course is a combination of short videos and then assignments
> that are loaded for automatic marking via SBT.
> I'm not sure how best to deliver a course, for example I don't know what
> the criteria are to get a course accepted in Coursera, However I think that
> is the second problem to be solved. The first is what to teach. :)
> I will think about my wish list/thoughts for a Neo4j course and post it
> tomorrow.
1 Introduction
- what is the thing
- why should you learn it
- what the course will cover and the agenda
- ground rules (for example, if you have questions, put up your hand and
ask)
- materials and homework expectations
- where to go after for further learning
- and of course, a strong recommendation to join this list ;-)
2. Getting started
- pre-requisites
- downloads
- installing
- verifying your installation.
3. Hello world
- first steps
- provide advanced variations if you are teaching hands on to get people
who are skilled more challenge.
4. Topic # 1 (perhaps setting up and using Java)
- details of topic
- theory
- exercise
- wrap up
5Š15 Same as above but cover more topics
Mandatory topics usually include:
* Debugging
* Best practices (woven into the course)
* Showing something then showing a better way and explaining why
* Optimizing & tuning
16 a final project
- start to finish final project to build a cool app.
17. Wrap up and questions
At this time I usually invite people to show stuff they have built to keep
them engaged.
Duane
***********************************
Technoracle Advanced Systems Inc.
Consulting and Contracting; Proven Results!
i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
b. http://technoracle.blogspot.com t. @duanechaos
"Don't fear the Graph! Embrace Neo4J"
Yes the Scala course is a combination of short videos and then assignments
that are loaded for automatic marking via SBT.
I'm not sure how best to deliver a course, for example I don't know what the
criteria are to get a course accepted in Coursera, However I think that is
the second problem to be solved. The first is what to teach. :)
I will think about my wish list/thoughts for a Neo4j course and post it
tomorrow.
Here are my thoughts on a Neo4j course. Essentially it focuses on training the student in 'best practices' around domain modeling and understanding the range of questions a graph database can answer through a language such as Cypher.
Cheers,
John
*Neo4j CoursePre course setup- install Neo4j server
I’m hoping that a lot of the course could be done with a standalone server and Cypher. More advanced modules could require a programming language such as Java.
Tools required:
- Standalone Neo4j server
Course Modules- Domain modelling with a graph database
- Cypher
- Presentation
It seems to me that it is important to be able to model your problem domain well and answer business questions from the model. Thus exercises involving creating a model and querying it are a good place to start. Perhaps the model is supplied to begin with and then students come up with their own model for more advanced assignments.
Thus the student could download an assignment that has a create Cypher statement that loads their Neo4j server with data. The student then uses the WebAdmin tool to craft Cypher queries to answer the assignment questions.
To submit an assignment could simply be in Cypher - a create statement and the statements that answer each of the assignment questions. This could facilitate automatic marking I’m hoping. :)
Some topics in this section would be:
- Around data
- loading data into a Neo4j database
- altering the data
- adding further data
- indexing
- how to extract data from a RDBMS and load that into Neo4j (more advanced)
- Around modeling
- how to model your domain
- how to handle time - e.g. via relationships (“owned” and “owns”) or properties or both
- how to change models when it cannot answer a new business question
- best graph database practices
- Around querying (essentially a mini Cypher course)
- build up a series of Cypher queries answering more complex questions
- Can I answer all business queries with Cypher or do I need to know another query mechanism?
The topics above enable the student to analyse their business domain, create a model and query it to show the business the value of a graph database approach. It would also teach them how to evolve their models as required. As they have built a number of models and constructed a variety of queries they should have gained confidence to present Neo4j to their workplace.
- Presentation
- I see this as more advanced in that it requires more tooling, such as Java, an IDE, a web server etc.
- How to write applications to access Neo4j and present the results in a number of formats
- I’m guessing we would have to choose one framework, such as Node.js and work with that
Other thoughts and questionsI see Neo4j being used in a couple of scenarios in my workplace. Firstly as an ongoing storage that is nightly updated keeping it in sync with a relational database, Business Intelligence like. Secondly for creation of on the fly models loaded with a sample of data and then used to answer business questions.
*
This is quite similar to a training course I recently put together for a
London start-up. The first day covered graph theory, the Neo4j product
itself and then delved deeply into Cypher. There were then a number of
Cypher exercises which could all be carried out through the neo4j-shell.
The second day talked about the server API and py2neo plus some best
practice material and some more (domain-specific) exercises. There was
nothing included on Java embedded usage as it wasn't required in this case.
The Cypher workbook is generic though so if you're interested in using it,
let me know and I'll send it over.
Cheers
Nigel
On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
> Here are my thoughts on a Neo4j course. Essentially it focuses on training
> the student in 'best practices' around domain modeling and understanding
> the range of questions a graph database can answer through a language such
> as Cypher.
> Cheers,
> John
> *Neo4j Course Pre course setup- install Neo4j server
> I’m hoping that a lot of the course could be done with a standalone server
> and Cypher. More advanced modules could require a programming language such
> as Java.
> Tools required:
> - Standalone Neo4j server
> Course Modules - Domain modelling with a graph database
> - Cypher
> - Presentation
> It seems to me that it is important to be able to model your problem
> domain well and answer business questions from the model. Thus exercises
> involving creating a model and querying it are a good place to start.
> Perhaps the model is supplied to begin with and then students come up with
> their own model for more advanced assignments.
> Thus the student could download an assignment that has a create Cypher
> statement that loads their Neo4j server with data. The student then uses
> the WebAdmin tool to craft Cypher queries to answer the assignment
> questions.
> To submit an assignment could simply be in Cypher - a create statement and
> the statements that answer each of the assignment questions. This could
> facilitate automatic marking I’m hoping. :)
> Some topics in this section would be:
> - Around data
> - loading data into a Neo4j database
> - altering the data
> - adding further data
> - indexing
> - how to extract data from a RDBMS and load that into Neo4j (more advanced)
> - Around modeling
> - how to model your domain
> - how to handle time - e.g. via relationships (“owned” and “owns”) or
> properties or both
> - how to change models when it cannot answer a new business question
> - best graph database practices
> - Around querying (essentially a mini Cypher course)
> - build up a series of Cypher queries answering more complex questions
> - Can I answer all business queries with Cypher or do I need to know
> another query mechanism?
> The topics above enable the student to analyse their business domain,
> create a model and query it to show the business the value of a graph
> database approach. It would also teach them how to evolve their models as
> required. As they have built a number of models and constructed a variety
> of queries they should have gained confidence to present Neo4j to their
> workplace.
> - Presentation
> - I see this as more advanced in that it requires more tooling, such as
> Java, an IDE, a web server etc.
> - How to write applications to access Neo4j and present the results in a
> number of formats
> - I’m guessing we would have to choose one framework, such as Node.js and
> work with that
> Other thoughts and questions I see Neo4j being used in a couple of
> scenarios in my workplace. Firstly as an ongoing storage that is nightly
> updated keeping it in sync with a relational database, Business
> Intelligence like. Secondly for creation of on the fly models loaded with a
> sample of data and then used to answer business questions.
> *
> Here are my thoughts on a Neo4j course. Essentially it focuses on training
> the student in 'best practices' around domain modeling and understanding
> the range of questions a graph database can answer through a language such
> as Cypher.
> Cheers,
> John
> *Neo4j CoursePre course setup- install Neo4j server
> I’m hoping that a lot of the course could be done with a standalone server
> and Cypher. More advanced modules could require a programming language such
> as Java.
> Tools required:
> - Standalone Neo4j server
> Course Modules- Domain modelling with a graph database
> - Cypher
> - Presentation
> It seems to me that it is important to be able to model your problem
> domain well and answer business questions from the model. Thus exercises
> involving creating a model and querying it are a good place to start.
> Perhaps the model is supplied to begin with and then students come up with
> their own model for more advanced assignments.
> Thus the student could download an assignment that has a create Cypher
> statement that loads their Neo4j server with data. The student then uses
> the WebAdmin tool to craft Cypher queries to answer the assignment
> questions.
> To submit an assignment could simply be in Cypher - a create statement and
> the statements that answer each of the assignment questions. This could
> facilitate automatic marking I’m hoping. :)
> Some topics in this section would be:
> - Around data
> - loading data into a Neo4j database
> - altering the data
> - adding further data
> - indexing
> - how to extract data from a RDBMS and load that into Neo4j (more advanced)
> - Around modeling
> - how to model your domain
> - how to handle time - e.g. via relationships (“owned” and “owns”) or
> properties or both
> - how to change models when it cannot answer a new business question
> - best graph database practices
> - Around querying (essentially a mini Cypher course)
> - build up a series of Cypher queries answering more complex questions
> - Can I answer all business queries with Cypher or do I need to know
> another query mechanism?
> The topics above enable the student to analyse their business domain,
> create a model and query it to show the business the value of a graph
> database approach. It would also teach them how to evolve their models as
> required. As they have built a number of models and constructed a variety
> of queries they should have gained confidence to present Neo4j to their
> workplace.
> - Presentation
> - I see this as more advanced in that it requires more tooling, such as
> Java, an IDE, a web server etc.
> - How to write applications to access Neo4j and present the results in a
> number of formats
> - I’m guessing we would have to choose one framework, such as Node.js and
> work with that
> Other thoughts and questionsI see Neo4j being used in a couple of
> scenarios in my workplace. Firstly as an ongoing storage that is nightly
> updated keeping it in sync with a relational database, Business
> Intelligence like. Secondly for creation of on the fly models loaded with a
> sample of data and then used to answer business questions.
> *
From a developer perspective, I think it would be useful to show a survey
of the libraries used to interact with neo4j, such as yours, Nigel, along
with SpringData and a handful of others, ranked by number of stars on
github and posts in a user group, or some other metric. There could then be
a video going through a quick intro by an expert in that language (or,
better yet, the author of that library). After all, devs will be spending
most of their time dealing with that sort of code. Maybe one of the
"classes/weeks" could have the survey of a handful of libraries, and then
the exercise could be "pick a library in your language of choice to do..."
On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net> wrote:
> This is quite similar to a training course I recently put together for a
> London start-up. The first day covered graph theory, the Neo4j product
> itself and then delved deeply into Cypher. There were then a number of
> Cypher exercises which could all be carried out through the neo4j-shell.
> The second day talked about the server API and py2neo plus some best
> practice material and some more (domain-specific) exercises. There was
> nothing included on Java embedded usage as it wasn't required in this case.
> The Cypher workbook is generic though so if you're interested in using it,
> let me know and I'll send it over.
> Cheers
> Nigel
> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>> Hi,
>> Here are my thoughts on a Neo4j course. Essentially it focuses on
>> training the student in 'best practices' around domain modeling and
>> understanding the range of questions a graph database can answer through a
>> language such as Cypher.
>> Cheers,
>> John
>> *Neo4j Course Pre course setup- install Neo4j server
>> I’m hoping that a lot of the course could be done with a standalone
>> server and Cypher. More advanced modules could require a programming
>> language such as Java.
>> Tools required:
>> - Standalone Neo4j server
>> Course Modules - Domain modelling with a graph database
>> - Cypher
>> - Presentation
>> It seems to me that it is important to be able to model your problem
>> domain well and answer business questions from the model. Thus exercises
>> involving creating a model and querying it are a good place to start.
>> Perhaps the model is supplied to begin with and then students come up with
>> their own model for more advanced assignments.
>> Thus the student could download an assignment that has a create Cypher
>> statement that loads their Neo4j server with data. The student then uses
>> the WebAdmin tool to craft Cypher queries to answer the assignment
>> questions.
>> To submit an assignment could simply be in Cypher - a create statement
>> and the statements that answer each of the assignment questions. This could
>> facilitate automatic marking I’m hoping. :)
>> Some topics in this section would be:
>> - Around data
>> - loading data into a Neo4j database
>> - altering the data
>> - adding further data
>> - indexing
>> - how to extract data from a RDBMS and load that into Neo4j (more
>> advanced)
>> - Around modeling
>> - how to model your domain
>> - how to handle time - e.g. via relationships (“owned” and “owns”) or
>> properties or both
>> - how to change models when it cannot answer a new business question
>> - best graph database practices
>> - Around querying (essentially a mini Cypher course)
>> - build up a series of Cypher queries answering more complex questions
>> - Can I answer all business queries with Cypher or do I need to know
>> another query mechanism?
>> The topics above enable the student to analyse their business domain,
>> create a model and query it to show the business the value of a graph
>> database approach. It would also teach them how to evolve their models as
>> required. As they have built a number of models and constructed a variety
>> of queries they should have gained confidence to present Neo4j to their
>> workplace.
>> - Presentation
>> - I see this as more advanced in that it requires more tooling, such as
>> Java, an IDE, a web server etc.
>> - How to write applications to access Neo4j and present the results in a
>> number of formats
>> - I’m guessing we would have to choose one framework, such as Node.js and
>> work with that
>> Other thoughts and questions I see Neo4j being used in a couple of
>> scenarios in my workplace. Firstly as an ongoing storage that is nightly
>> updated keeping it in sync with a relational database, Business
>> Intelligence like. Secondly for creation of on the fly models loaded with a
>> sample of data and then used to answer business questions.
>> *
This is sort of what I was referring to when I mentioned the audience is
very important for the course. I see 3-4 core audiences for courses:
1. Developers
2. Modelling people (UML / XML heads like myself)
3. Business People
4. Others (Educators, Oracle spies etcŠ. ;-)
Duane
***********************************
Technoracle Advanced Systems Inc.
Consulting and Contracting; Proven Results!
i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
b. http://technoracle.blogspot.com t. @duanechaos
"Don't fear the Graph! Embrace Neo4J"
From a developer perspective, I think it would be useful to show a survey of
the libraries used to interact with neo4j, such as yours, Nigel, along with
SpringData and a handful of others, ranked by number of stars on github and
posts in a user group, or some other metric. There could then be a video
going through a quick intro by an expert in that language (or, better yet,
the author of that library). After all, devs will be spending most of their
time dealing with that sort of code. Maybe one of the "classes/weeks" could
have the survey of a handful of libraries, and then the exercise could be
"pick a library in your language of choice to do..."
On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net> wrote:
> This is quite similar to a training course I recently put together for a
> London start-up. The first day covered graph theory, the Neo4j product itself
> and then delved deeply into Cypher. There were then a number of Cypher
> exercises which could all be carried out through the neo4j-shell.
> The second day talked about the server API and py2neo plus some best practice
> material and some more (domain-specific) exercises. There was nothing included
> on Java embedded usage as it wasn't required in this case.
> The Cypher workbook is generic though so if you're interested in using it, let
> me know and I'll send it over.
> Cheers
> Nigel
> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>> Hi,
>> Here are my thoughts on a Neo4j course. Essentially it focuses on training
>> the student in 'best practices' around domain modeling and understanding the
>> range of questions a graph database can answer through a language such as
>> Cypher.
>> Cheers,
>> John
>> Neo4j Course
>> Pre course setup
>> - install Neo4j server
>> I¹m hoping that a lot of the course could be done with a standalone server
>> and Cypher. More advanced modules could require a programming language such
>> as Java.
>> Tools required:
>> - Standalone Neo4j server
>> Course Modules
>> - Domain modelling with a graph database
>> - Cypher
>> - Presentation
>> It seems to me that it is important to be able to model your problem domain
>> well and answer business questions from the model. Thus exercises involving
>> creating a model and querying it are a good place to start. Perhaps the model
>> is supplied to begin with and then students come up with their own model for
>> more advanced assignments.
>> Thus the student could download an assignment that has a create Cypher
>> statement that loads their Neo4j server with data. The student then uses the
>> WebAdmin tool to craft Cypher queries to answer the assignment questions.
>> To submit an assignment could simply be in Cypher - a create statement and
>> the statements that answer each of the assignment questions. This could
>> facilitate automatic marking I¹m hoping. :)
>> Some topics in this section would be:
>> - Around data
>> - loading data into a Neo4j database
>> - altering the data
>> - adding further data
>> - indexing
>> - how to extract data from a RDBMS and load that into Neo4j (more advanced)
>> - Around modeling
>> - how to model your domain
>> - how to handle time - e.g. via relationships (³owned² and ³owns²) or
>> properties or both
>> - how to change models when it cannot answer a new business question
>> - best graph database practices
>> - Around querying (essentially a mini Cypher course)
>> - build up a series of Cypher queries answering more complex questions
>> - Can I answer all business queries with Cypher or do I need to know another
>> query mechanism?
>> The topics above enable the student to analyse their business domain, create
>> a model and query it to show the business the value of a graph database
>> approach. It would also teach them how to evolve their models as required. As
>> they have built a number of models and constructed a variety of queries they
>> should have gained confidence to present Neo4j to their workplace.
>> - Presentation
>> - I see this as more advanced in that it requires more tooling, such as
>> Java, an IDE, a web server etc.
>> - How to write applications to access Neo4j and present the results in a
>> number of formats
>> - I¹m guessing we would have to choose one framework, such as Node.js and
>> work with that
>> Other thoughts and questions
>> I see Neo4j being used in a couple of scenarios in my workplace. Firstly as
>> an ongoing storage that is nightly updated keeping it in sync with a
>> relational database, Business Intelligence like. Secondly for creation of on
>> the fly models loaded with a sample of data and then used to answer business
>> questions.
That makes sense. #1 is the most important--that's my biased opinion,
anyway. ;)
I think dba-type people could be another audience. They care less about how
to use neo4j (although they need to know basics, and maybe even query
tuning stuff), and care more about keeping it running and tuned from a
server standpoint.
> This is sort of what I was referring to when I mentioned the audience is
> very important for the course. I see 3-4 core audiences for courses:
> 1. Developers
> 2. Modelling people (UML / XML heads like myself)
> 3. Business People
> 4. Others (Educators, Oracle spies etc…. ;-)
> Duane
> ***********************************
> Technoracle Advanced Systems Inc.
> Consulting and Contracting; Proven Results!
> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
> b. http://technoracle.blogspot.com > t. @duanechaos
> "Don't fear the Graph! Embrace Neo4J"
> From a developer perspective, I think it would be useful to show a survey
> of the libraries used to interact with neo4j, such as yours, Nigel, along
> with SpringData and a handful of others, ranked by number of stars on
> github and posts in a user group, or some other metric. There could then be
> a video going through a quick intro by an expert in that language (or,
> better yet, the author of that library). After all, devs will be spending
> most of their time dealing with that sort of code. Maybe one of the
> "classes/weeks" could have the survey of a handful of libraries, and then
> the exercise could be "pick a library in your language of choice to do..."
> Just an idea.
> Wes
> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net> wrote:
>> This is quite similar to a training course I recently put together for a
>> London start-up. The first day covered graph theory, the Neo4j product
>> itself and then delved deeply into Cypher. There were then a number of
>> Cypher exercises which could all be carried out through the neo4j-shell.
>> The second day talked about the server API and py2neo plus some best
>> practice material and some more (domain-specific) exercises. There was
>> nothing included on Java embedded usage as it wasn't required in this case.
>> The Cypher workbook is generic though so if you're interested in using
>> it, let me know and I'll send it over.
>> Cheers
>> Nigel
>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>>> Hi,
>>> Here are my thoughts on a Neo4j course. Essentially it focuses on
>>> training the student in 'best practices' around domain modeling and
>>> understanding the range of questions a graph database can answer through a
>>> language such as Cypher.
>>> Cheers,
>>> John
>>> *Neo4j Course Pre course setup- install Neo4j server
>>> I’m hoping that a lot of the course could be done with a standalone
>>> server and Cypher. More advanced modules could require a programming
>>> language such as Java.
>>> Tools required:
>>> - Standalone Neo4j server
>>> Course Modules - Domain modelling with a graph database
>>> - Cypher
>>> - Presentation
>>> It seems to me that it is important to be able to model your problem
>>> domain well and answer business questions from the model. Thus exercises
>>> involving creating a model and querying it are a good place to start.
>>> Perhaps the model is supplied to begin with and then students come up with
>>> their own model for more advanced assignments.
>>> Thus the student could download an assignment that has a create Cypher
>>> statement that loads their Neo4j server with data. The student then uses
>>> the WebAdmin tool to craft Cypher queries to answer the assignment
>>> questions.
>>> To submit an assignment could simply be in Cypher - a create statement
>>> and the statements that answer each of the assignment questions. This could
>>> facilitate automatic marking I’m hoping. :)
>>> Some topics in this section would be:
>>> - Around data
>>> - loading data into a Neo4j database
>>> - altering the data
>>> - adding further data
>>> - indexing
>>> - how to extract data from a RDBMS and load that into Neo4j (more
>>> advanced)
>>> - Around modeling
>>> - how to model your domain
>>> - how to handle time - e.g. via relationships (“owned” and “owns”) or
>>> properties or both
>>> - how to change models when it cannot answer a new business question
>>> - best graph database practices
>>> - Around querying (essentially a mini Cypher course)
>>> - build up a series of Cypher queries answering more complex questions
>>> - Can I answer all business queries with Cypher or do I need to know
>>> another query mechanism?
>>> The topics above enable the student to analyse their business domain,
>>> create a model and query it to show the business the value of a graph
>>> database approach. It would also teach them how to evolve their models as
>>> required. As they have built a number of models and constructed a variety
>>> of queries they should have gained confidence to present Neo4j to their
>>> workplace.
>>> - Presentation
>>> - I see this as more advanced in that it requires more tooling, such as
>>> Java, an IDE, a web server etc.
>>> - How to write applications to access Neo4j and present the results in a
>>> number of formats
>>> - I’m guessing we would have to choose one framework, such as Node.js
>>> and work with that
>>> Other thoughts and questions I see Neo4j being used in a couple of
>>> scenarios in my workplace. Firstly as an ongoing storage that is nightly
>>> updated keeping it in sync with a relational database, Business
>>> Intelligence like. Secondly for creation of on the fly models loaded with a
>>> sample of data and then used to answer business questions.
>>> *
On a similar topic, I'm looking forward to getting some feedback about
py2neo usage now that the User-Agent header is in place :-)
Sounds like a very good idea not least because I'm guessing that the "4j"
puts off a lot of non-Java programmers. If you knew nothing else about the
product, you could be excused for thinking it was only relevant within a
Java world in the same way that log4j or junit are Java-specific projects
(albeit with various log4* and *unit variants!)
Nige
On 9 October 2012 16:23, Wes Freeman <freeman....@gmail.com> wrote:
> From a developer perspective, I think it would be useful to show a survey
> of the libraries used to interact with neo4j, such as yours, Nigel, along
> with SpringData and a handful of others, ranked by number of stars on
> github and posts in a user group, or some other metric. There could then be
> a video going through a quick intro by an expert in that language (or,
> better yet, the author of that library). After all, devs will be spending
> most of their time dealing with that sort of code. Maybe one of the
> "classes/weeks" could have the survey of a handful of libraries, and then
> the exercise could be "pick a library in your language of choice to do..."
> Just an idea.
> Wes
> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net> wrote:
>> This is quite similar to a training course I recently put together for a
>> London start-up. The first day covered graph theory, the Neo4j product
>> itself and then delved deeply into Cypher. There were then a number of
>> Cypher exercises which could all be carried out through the neo4j-shell.
>> The second day talked about the server API and py2neo plus some best
>> practice material and some more (domain-specific) exercises. There was
>> nothing included on Java embedded usage as it wasn't required in this case.
>> The Cypher workbook is generic though so if you're interested in using
>> it, let me know and I'll send it over.
>> Cheers
>> Nigel
>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>>> Hi,
>>> Here are my thoughts on a Neo4j course. Essentially it focuses on
>>> training the student in 'best practices' around domain modeling and
>>> understanding the range of questions a graph database can answer through a
>>> language such as Cypher.
>>> Cheers,
>>> John
>>> *Neo4j Course Pre course setup- install Neo4j server
>>> I’m hoping that a lot of the course could be done with a standalone
>>> server and Cypher. More advanced modules could require a programming
>>> language such as Java.
>>> Tools required:
>>> - Standalone Neo4j server
>>> Course Modules - Domain modelling with a graph database
>>> - Cypher
>>> - Presentation
>>> It seems to me that it is important to be able to model your problem
>>> domain well and answer business questions from the model. Thus exercises
>>> involving creating a model and querying it are a good place to start.
>>> Perhaps the model is supplied to begin with and then students come up with
>>> their own model for more advanced assignments.
>>> Thus the student could download an assignment that has a create Cypher
>>> statement that loads their Neo4j server with data. The student then uses
>>> the WebAdmin tool to craft Cypher queries to answer the assignment
>>> questions.
>>> To submit an assignment could simply be in Cypher - a create statement
>>> and the statements that answer each of the assignment questions. This could
>>> facilitate automatic marking I’m hoping. :)
>>> Some topics in this section would be:
>>> - Around data
>>> - loading data into a Neo4j database
>>> - altering the data
>>> - adding further data
>>> - indexing
>>> - how to extract data from a RDBMS and load that into Neo4j (more
>>> advanced)
>>> - Around modeling
>>> - how to model your domain
>>> - how to handle time - e.g. via relationships (“owned” and “owns”) or
>>> properties or both
>>> - how to change models when it cannot answer a new business question
>>> - best graph database practices
>>> - Around querying (essentially a mini Cypher course)
>>> - build up a series of Cypher queries answering more complex questions
>>> - Can I answer all business queries with Cypher or do I need to know
>>> another query mechanism?
>>> The topics above enable the student to analyse their business domain,
>>> create a model and query it to show the business the value of a graph
>>> database approach. It would also teach them how to evolve their models as
>>> required. As they have built a number of models and constructed a variety
>>> of queries they should have gained confidence to present Neo4j to their
>>> workplace.
>>> - Presentation
>>> - I see this as more advanced in that it requires more tooling, such as
>>> Java, an IDE, a web server etc.
>>> - How to write applications to access Neo4j and present the results in a
>>> number of formats
>>> - I’m guessing we would have to choose one framework, such as Node.js
>>> and work with that
>>> Other thoughts and questions I see Neo4j being used in a couple of
>>> scenarios in my workplace. Firstly as an ongoing storage that is nightly
>>> updated keeping it in sync with a relational database, Business
>>> Intelligence like. Secondly for creation of on the fly models loaded with a
>>> sample of data and then used to answer business questions.
>>> *
Actually, here I think DBAs are just as important as devs (if not more so).
They are involved with databases on a day-to-day basis instead of
while-a-piece-of-software-is-being-built-or-enhanced. The DBAs I've worked
with are often the experts and the developers the novices.
(BTW I'm primarily a developer not a DBA, although I have done both jobs!)
Nige
On 9 October 2012 16:59, Wes Freeman <freeman....@gmail.com> wrote:
> That makes sense. #1 is the most important--that's my biased opinion,
> anyway. ;)
> I think dba-type people could be another audience. They care less about
> how to use neo4j (although they need to know basics, and maybe even query
> tuning stuff), and care more about keeping it running and tuned from a
> server standpoint.
> Wes
> On Tue, Oct 9, 2012 at 11:33 AM, Duane Nickull <
> du...@technoracle-systems.com> wrote:
>> Wes:
>> This is sort of what I was referring to when I mentioned the audience is
>> very important for the course. I see 3-4 core audiences for courses:
>> 1. Developers
>> 2. Modelling people (UML / XML heads like myself)
>> 3. Business People
>> 4. Others (Educators, Oracle spies etc…. ;-)
>> Duane
>> ***********************************
>> Technoracle Advanced Systems Inc.
>> Consulting and Contracting; Proven Results!
>> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>> b. http://technoracle.blogspot.com >> t. @duanechaos
>> "Don't fear the Graph! Embrace Neo4J"
>> From a developer perspective, I think it would be useful to show a survey
>> of the libraries used to interact with neo4j, such as yours, Nigel, along
>> with SpringData and a handful of others, ranked by number of stars on
>> github and posts in a user group, or some other metric. There could then be
>> a video going through a quick intro by an expert in that language (or,
>> better yet, the author of that library). After all, devs will be spending
>> most of their time dealing with that sort of code. Maybe one of the
>> "classes/weeks" could have the survey of a handful of libraries, and then
>> the exercise could be "pick a library in your language of choice to do..."
>> Just an idea.
>> Wes
>> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net> wrote:
>>> This is quite similar to a training course I recently put together for a
>>> London start-up. The first day covered graph theory, the Neo4j product
>>> itself and then delved deeply into Cypher. There were then a number of
>>> Cypher exercises which could all be carried out through the neo4j-shell.
>>> The second day talked about the server API and py2neo plus some best
>>> practice material and some more (domain-specific) exercises. There was
>>> nothing included on Java embedded usage as it wasn't required in this case.
>>> The Cypher workbook is generic though so if you're interested in using
>>> it, let me know and I'll send it over.
>>> Cheers
>>> Nigel
>>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>>>> Hi,
>>>> Here are my thoughts on a Neo4j course. Essentially it focuses on
>>>> training the student in 'best practices' around domain modeling and
>>>> understanding the range of questions a graph database can answer through a
>>>> language such as Cypher.
>>>> Cheers,
>>>> John
>>>> *Neo4j Course Pre course setup- install Neo4j server
>>>> I’m hoping that a lot of the course could be done with a standalone
>>>> server and Cypher. More advanced modules could require a programming
>>>> language such as Java.
>>>> Tools required:
>>>> - Standalone Neo4j server
>>>> Course Modules - Domain modelling with a graph database
>>>> - Cypher
>>>> - Presentation
>>>> It seems to me that it is important to be able to model your problem
>>>> domain well and answer business questions from the model. Thus exercises
>>>> involving creating a model and querying it are a good place to start.
>>>> Perhaps the model is supplied to begin with and then students come up with
>>>> their own model for more advanced assignments.
>>>> Thus the student could download an assignment that has a create Cypher
>>>> statement that loads their Neo4j server with data. The student then uses
>>>> the WebAdmin tool to craft Cypher queries to answer the assignment
>>>> questions.
>>>> To submit an assignment could simply be in Cypher - a create statement
>>>> and the statements that answer each of the assignment questions. This could
>>>> facilitate automatic marking I’m hoping. :)
>>>> Some topics in this section would be:
>>>> - Around data
>>>> - loading data into a Neo4j database
>>>> - altering the data
>>>> - adding further data
>>>> - indexing
>>>> - how to extract data from a RDBMS and load that into Neo4j (more
>>>> advanced)
>>>> - Around modeling
>>>> - how to model your domain
>>>> - how to handle time - e.g. via relationships (“owned” and “owns”) or
>>>> properties or both
>>>> - how to change models when it cannot answer a new business question
>>>> - best graph database practices
>>>> - Around querying (essentially a mini Cypher course)
>>>> - build up a series of Cypher queries answering more complex questions
>>>> - Can I answer all business queries with Cypher or do I need to know
>>>> another query mechanism?
>>>> The topics above enable the student to analyse their business domain,
>>>> create a model and query it to show the business the value of a graph
>>>> database approach. It would also teach them how to evolve their models as
>>>> required. As they have built a number of models and constructed a variety
>>>> of queries they should have gained confidence to present Neo4j to their
>>>> workplace.
>>>> - Presentation
>>>> - I see this as more advanced in that it requires more tooling, such as
>>>> Java, an IDE, a web server etc.
>>>> - How to write applications to access Neo4j and present the results in
>>>> a number of formats
>>>> - I’m guessing we would have to choose one framework, such as Node.js
>>>> and work with that
>>>> Other thoughts and questions I see Neo4j being used in a couple of
>>>> scenarios in my workplace. Firstly as an ongoing storage that is nightly
>>>> updated keeping it in sync with a relational database, Business
>>>> Intelligence like. Secondly for creation of on the fly models loaded with a
>>>> sample of data and then used to answer business questions.
>>>> *
Perhaps we should agree to take each others courses as a test.
BTW I have a contact who will pay money for courses.
D
***********************************
Technoracle Advanced Systems Inc.
Consulting and Contracting; Proven Results!
i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
b. http://technoracle.blogspot.com t. @duanechaos
"Don't fear the Graph! Embrace Neo4J"
On a similar topic, I'm looking forward to getting some feedback about
py2neo usage now that the User-Agent header is in place :-)
Sounds like a very good idea not least because I'm guessing that the "4j"
puts off a lot of non-Java programmers. If you knew nothing else about the
product, you could be excused for thinking it was only relevant within a
Java world in the same way that log4j or junit are Java-specific projects
(albeit with various log4* and *unit variants!)
Nige
On 9 October 2012 16:23, Wes Freeman <freeman....@gmail.com> wrote:
> From a developer perspective, I think it would be useful to show a survey of
> the libraries used to interact with neo4j, such as yours, Nigel, along with
> SpringData and a handful of others, ranked by number of stars on github and
> posts in a user group, or some other metric. There could then be a video going
> through a quick intro by an expert in that language (or, better yet, the
> author of that library). After all, devs will be spending most of their time
> dealing with that sort of code. Maybe one of the "classes/weeks" could have
> the survey of a handful of libraries, and then the exercise could be "pick a
> library in your language of choice to do..."
> Just an idea.
> Wes
> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net> wrote:
>> This is quite similar to a training course I recently put together for a
>> London start-up. The first day covered graph theory, the Neo4j product itself
>> and then delved deeply into Cypher. There were then a number of Cypher
>> exercises which could all be carried out through the neo4j-shell.
>> The second day talked about the server API and py2neo plus some best practice
>> material and some more (domain-specific) exercises. There was nothing
>> included on Java embedded usage as it wasn't required in this case.
>> The Cypher workbook is generic though so if you're interested in using it,
>> let me know and I'll send it over.
>> Cheers
>> Nigel
>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>>> Hi,
>>> Here are my thoughts on a Neo4j course. Essentially it focuses on training
>>> the student in 'best practices' around domain modeling and understanding the
>>> range of questions a graph database can answer through a language such as
>>> Cypher.
>>> Cheers,
>>> John
>>> Neo4j Course
>>> Pre course setup
>>> - install Neo4j server
>>> I¹m hoping that a lot of the course could be done with a standalone server
>>> and Cypher. More advanced modules could require a programming language such
>>> as Java.
>>> Tools required:
>>> - Standalone Neo4j server
>>> Course Modules
>>> - Domain modelling with a graph database
>>> - Cypher
>>> - Presentation
>>> It seems to me that it is important to be able to model your problem domain
>>> well and answer business questions from the model. Thus exercises involving
>>> creating a model and querying it are a good place to start. Perhaps the
>>> model is supplied to begin with and then students come up with their own
>>> model for more advanced assignments.
>>> Thus the student could download an assignment that has a create Cypher
>>> statement that loads their Neo4j server with data. The student then uses the
>>> WebAdmin tool to craft Cypher queries to answer the assignment questions.
>>> To submit an assignment could simply be in Cypher - a create statement and
>>> the statements that answer each of the assignment questions. This could
>>> facilitate automatic marking I¹m hoping. :)
>>> Some topics in this section would be:
>>> - Around data
>>> - loading data into a Neo4j database
>>> - altering the data
>>> - adding further data
>>> - indexing
>>> - how to extract data from a RDBMS and load that into Neo4j (more advanced)
>>> - Around modeling
>>> - how to model your domain
>>> - how to handle time - e.g. via relationships (³owned² and ³owns²) or
>>> properties or both
>>> - how to change models when it cannot answer a new business question
>>> - best graph database practices
>>> - Around querying (essentially a mini Cypher course)
>>> - build up a series of Cypher queries answering more complex questions
>>> - Can I answer all business queries with Cypher or do I need to know another
>>> query mechanism?
>>> The topics above enable the student to analyse their business domain, create
>>> a model and query it to show the business the value of a graph database
>>> approach. It would also teach them how to evolve their models as required.
>>> As they have built a number of models and constructed a variety of queries
>>> they should have gained confidence to present Neo4j to their workplace.
>>> - Presentation
>>> - I see this as more advanced in that it requires more tooling, such as
>>> Java, an IDE, a web server etc.
>>> - How to write applications to access Neo4j and present the results in a
>>> number of formats
>>> - I¹m guessing we would have to choose one framework, such as Node.js and
>>> work with that
>>> Other thoughts and questions
>>> I see Neo4j being used in a couple of scenarios in my workplace. Firstly as
>>> an ongoing storage that is nightly updated keeping it in sync with a
>>> relational database, Business Intelligence like. Secondly for creation of on
>>> the fly models loaded with a sample of data and then used to answer business
>>> questions.
The best thing is that this is a community based effort. My course will be
open source as I have done with all others.
Duane
***********************************
Technoracle Advanced Systems Inc.
Consulting and Contracting; Proven Results!
i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
b. http://technoracle.blogspot.com t. @duanechaos
"Don't fear the Graph! Embrace Neo4J"
Actually, here I think DBAs are just as important as devs (if not more so).
They are involved with databases on a day-to-day basis instead of
while-a-piece-of-software-is-being-built-or-enhanced. The DBAs I've worked
with are often the experts and the developers the novices.
(BTW I'm primarily a developer not a DBA, although I have done both jobs!)
Nige
On 9 October 2012 16:59, Wes Freeman <freeman....@gmail.com> wrote:
> That makes sense. #1 is the most important--that's my biased opinion, anyway.
> ;)
> I think dba-type people could be another audience. They care less about how to
> use neo4j (although they need to know basics, and maybe even query tuning
> stuff), and care more about keeping it running and tuned from a server
> standpoint.
> Wes
> On Tue, Oct 9, 2012 at 11:33 AM, Duane Nickull <du...@technoracle-systems.com>
> wrote:
>> Wes:
>> This is sort of what I was referring to when I mentioned the audience is very
>> important for the course. I see 3-4 core audiences for courses:
>> 1. Developers
>> 2. Modelling people (UML / XML heads like myself)
>> 3. Business People
>> 4. Others (Educators, Oracle spies etcŠ. ;-)
>> Duane
>> ***********************************
>> Technoracle Advanced Systems Inc.
>> Consulting and Contracting; Proven Results!
>> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>> b. http://technoracle.blogspot.com >> t. @duanechaos
>> "Don't fear the Graph! Embrace Neo4J"
>> From a developer perspective, I think it would be useful to show a survey of
>> the libraries used to interact with neo4j, such as yours, Nigel, along with
>> SpringData and a handful of others, ranked by number of stars on github and
>> posts in a user group, or some other metric. There could then be a video
>> going through a quick intro by an expert in that language (or, better yet,
>> the author of that library). After all, devs will be spending most of their
>> time dealing with that sort of code. Maybe one of the "classes/weeks" could
>> have the survey of a handful of libraries, and then the exercise could be
>> "pick a library in your language of choice to do..."
>> Just an idea.
>> Wes
>> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net> wrote:
>>> This is quite similar to a training course I recently put together for a
>>> London start-up. The first day covered graph theory, the Neo4j product
>>> itself and then delved deeply into Cypher. There were then a number of
>>> Cypher exercises which could all be carried out through the neo4j-shell.
>>> The second day talked about the server API and py2neo plus some best
>>> practice material and some more (domain-specific) exercises. There was
>>> nothing included on Java embedded usage as it wasn't required in this case.
>>> The Cypher workbook is generic though so if you're interested in using it,
>>> let me know and I'll send it over.
>>> Cheers
>>> Nigel
>>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>>>> Hi,
>>>> Here are my thoughts on a Neo4j course. Essentially it focuses on training
>>>> the student in 'best practices' around domain modeling and understanding
>>>> the range of questions a graph database can answer through a language such
>>>> as Cypher.
>>>> Cheers,
>>>> John
>>>> Neo4j Course
>>>> Pre course setup
>>>> - install Neo4j server
>>>> I¹m hoping that a lot of the course could be done with a standalone server
>>>> and Cypher. More advanced modules could require a programming language such
>>>> as Java.
>>>> Tools required:
>>>> - Standalone Neo4j server
>>>> Course Modules
>>>> - Domain modelling with a graph database
>>>> - Cypher
>>>> - Presentation
>>>> It seems to me that it is important to be able to model your problem domain
>>>> well and answer business questions from the model. Thus exercises involving
>>>> creating a model and querying it are a good place to start. Perhaps the
>>>> model is supplied to begin with and then students come up with their own
>>>> model for more advanced assignments.
>>>> Thus the student could download an assignment that has a create Cypher
>>>> statement that loads their Neo4j server with data. The student then uses
>>>> the WebAdmin tool to craft Cypher queries to answer the assignment
>>>> questions.
>>>> To submit an assignment could simply be in Cypher - a create statement and
>>>> the statements that answer each of the assignment questions. This could
>>>> facilitate automatic marking I¹m hoping. :)
>>>> Some topics in this section would be:
>>>> - Around data
>>>> - loading data into a Neo4j database
>>>> - altering the data
>>>> - adding further data
>>>> - indexing
>>>> - how to extract data from a RDBMS and load that into Neo4j (more advanced)
>>>> - Around modeling
>>>> - how to model your domain
>>>> - how to handle time - e.g. via relationships (³owned² and ³owns²) or
>>>> properties or both
>>>> - how to change models when it cannot answer a new business question
>>>> - best graph database practices
>>>> - Around querying (essentially a mini Cypher course)
>>>> - build up a series of Cypher queries answering more complex questions
>>>> - Can I answer all business queries with Cypher or do I need to know
>>>> another query mechanism?
>>>> The topics above enable the student to analyse their business domain,
>>>> create a model and query it to show the business the value of a graph
>>>> database approach. It would also teach them how to evolve their models as
>>>> required. As they have built a number of models and constructed a variety
>>>> of queries they should have gained confidence to present Neo4j to their
>>>> workplace.
>>>> - Presentation
>>>> - I see this as more advanced in that it requires more tooling, such as
>>>> Java, an IDE, a web server etc.
>>>> - How to write applications to access Neo4j and present the results in a
>>>> number of formats
>>>> - I¹m guessing we would have to choose one framework, such as Node.js and
>>>> work with that
>>>> Other thoughts and questions
>>>> I see Neo4j being used in a couple of scenarios in my workplace. Firstly as
>>>> an ongoing storage that is nightly updated keeping it in sync with a
>>>> relational database, Business Intelligence like. Secondly for creation of
>>>> on the fly models loaded with a sample of data and then used to answer
>>>> business questions.
Guys,
just reached out to @cousera on whom to contact for a course, but have
not heard back. Does anyone know the process for making this happen
there or on Udemy etc?
<du...@technoracle-systems.com> wrote:
> To me , DBA = dev.
> The best thing is that this is a community based effort. My course will be
> open source as I have done with all others.
> Duane
> ***********************************
> Technoracle Advanced Systems Inc.
> Consulting and Contracting; Proven Results!
> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
> b. http://technoracle.blogspot.com > t. @duanechaos
> "Don't fear the Graph! Embrace Neo4J"
> Actually, here I think DBAs are just as important as devs (if not more so).
> They are involved with databases on a day-to-day basis instead of
> while-a-piece-of-software-is-being-built-or-enhanced. The DBAs I've worked
> with are often the experts and the developers the novices.
> (BTW I'm primarily a developer not a DBA, although I have done both jobs!)
> Nige
> On 9 October 2012 16:59, Wes Freeman <freeman....@gmail.com> wrote:
>> That makes sense. #1 is the most important--that's my biased opinion,
>> anyway. ;)
>> I think dba-type people could be another audience. They care less about
>> how to use neo4j (although they need to know basics, and maybe even query
>> tuning stuff), and care more about keeping it running and tuned from a
>> server standpoint.
>> Wes
>> On Tue, Oct 9, 2012 at 11:33 AM, Duane Nickull
>> <du...@technoracle-systems.com> wrote:
>>> Wes:
>>> This is sort of what I was referring to when I mentioned the audience is
>>> very important for the course. I see 3-4 core audiences for courses:
>>> Developers
>>> Modelling people (UML / XML heads like myself)
>>> Business People
>>> Others (Educators, Oracle spies etc…. ;-)
>>> Duane
>>> ***********************************
>>> Technoracle Advanced Systems Inc.
>>> Consulting and Contracting; Proven Results!
>>> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>>> b. http://technoracle.blogspot.com >>> t. @duanechaos
>>> "Don't fear the Graph! Embrace Neo4J"
>>> From a developer perspective, I think it would be useful to show a survey
>>> of the libraries used to interact with neo4j, such as yours, Nigel, along
>>> with SpringData and a handful of others, ranked by number of stars on github
>>> and posts in a user group, or some other metric. There could then be a video
>>> going through a quick intro by an expert in that language (or, better yet,
>>> the author of that library). After all, devs will be spending most of their
>>> time dealing with that sort of code. Maybe one of the "classes/weeks" could
>>> have the survey of a handful of libraries, and then the exercise could be
>>> "pick a library in your language of choice to do..."
>>> Just an idea.
>>> Wes
>>> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net> wrote:
>>>> This is quite similar to a training course I recently put together for a
>>>> London start-up. The first day covered graph theory, the Neo4j product
>>>> itself and then delved deeply into Cypher. There were then a number of
>>>> Cypher exercises which could all be carried out through the neo4j-shell.
>>>> The second day talked about the server API and py2neo plus some best
>>>> practice material and some more (domain-specific) exercises. There was
>>>> nothing included on Java embedded usage as it wasn't required in this case.
>>>> The Cypher workbook is generic though so if you're interested in using
>>>> it, let me know and I'll send it over.
>>>> Cheers
>>>> Nigel
>>>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>>>>> Hi,
>>>>> Here are my thoughts on a Neo4j course. Essentially it focuses on
>>>>> training the student in 'best practices' around domain modeling and
>>>>> understanding the range of questions a graph database can answer through a
>>>>> language such as Cypher.
>>>>> Cheers,
>>>>> John
>>>>> Neo4j Course
>>>>> Pre course setup
>>>>> - install Neo4j server
>>>>> I’m hoping that a lot of the course could be done with a standalone
>>>>> server and Cypher. More advanced modules could require a programming
>>>>> language such as Java.
>>>>> Tools required:
>>>>> - Standalone Neo4j server
>>>>> Course Modules
>>>>> - Domain modelling with a graph database
>>>>> - Cypher
>>>>> - Presentation
>>>>> It seems to me that it is important to be able to model your problem
>>>>> domain well and answer business questions from the model. Thus exercises
>>>>> involving creating a model and querying it are a good place to start.
>>>>> Perhaps the model is supplied to begin with and then students come up with
>>>>> their own model for more advanced assignments.
>>>>> Thus the student could download an assignment that has a create Cypher
>>>>> statement that loads their Neo4j server with data. The student then uses the
>>>>> WebAdmin tool to craft Cypher queries to answer the assignment questions.
>>>>> To submit an assignment could simply be in Cypher - a create statement
>>>>> and the statements that answer each of the assignment questions. This could
>>>>> facilitate automatic marking I’m hoping. :)
>>>>> Some topics in this section would be:
>>>>> - Around data
>>>>> - loading data into a Neo4j database
>>>>> - altering the data
>>>>> - adding further data
>>>>> - indexing
>>>>> - how to extract data from a RDBMS and load that into Neo4j (more
>>>>> advanced)
>>>>> - Around modeling
>>>>> - how to model your domain
>>>>> - how to handle time - e.g. via relationships (“owned” and “owns”) or
>>>>> properties or both
>>>>> - how to change models when it cannot answer a new business question
>>>>> - best graph database practices
>>>>> - Around querying (essentially a mini Cypher course)
>>>>> - build up a series of Cypher queries answering more complex questions
>>>>> - Can I answer all business queries with Cypher or do I need to know
>>>>> another query mechanism?
>>>>> The topics above enable the student to analyse their business domain,
>>>>> create a model and query it to show the business the value of a graph
>>>>> database approach. It would also teach them how to evolve their models as
>>>>> required. As they have built a number of models and constructed a variety of
>>>>> queries they should have gained confidence to present Neo4j to their
>>>>> workplace.
>>>>> - Presentation
>>>>> - I see this as more advanced in that it requires more tooling, such as
>>>>> Java, an IDE, a web server etc.
>>>>> - How to write applications to access Neo4j and present the results in
>>>>> a number of formats
>>>>> - I’m guessing we would have to choose one framework, such as Node.js
>>>>> and work with that
>>>>> Other thoughts and questions
>>>>> I see Neo4j being used in a couple of scenarios in my workplace.
>>>>> Firstly as an ongoing storage that is nightly updated keeping it in sync
>>>>> with a relational database, Business Intelligence like. Secondly for
>>>>> creation of on the fly models loaded with a sample of data and then used to
>>>>> answer business questions.
On about page ( https://www.coursera.org/about ) they write that they
partner with universities. Forgive me, but I don't know if any of neo4j
staff/committers are active professors on some college - if they are, maybe
try establishing connection with coursera through college.
Kind regards,
Stevo Slavic.
On Wed, Oct 10, 2012 at 11:49 AM, Peter Neubauer <
peter.neuba...@neotechnology.com> wrote:
> Guys,
> just reached out to @cousera on whom to contact for a course, but have
> not heard back. Does anyone know the process for making this happen
> there or on Udemy etc?
> On Tue, Oct 9, 2012 at 9:07 PM, Duane Nickull
> <du...@technoracle-systems.com> wrote:
> > To me , DBA = dev.
> > The best thing is that this is a community based effort. My course will
> be
> > open source as I have done with all others.
> > Duane
> > ***********************************
> > Technoracle Advanced Systems Inc.
> > Consulting and Contracting; Proven Results!
> > i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
> > b. http://technoracle.blogspot.com > > t. @duanechaos
> > "Don't fear the Graph! Embrace Neo4J"
> > Actually, here I think DBAs are just as important as devs (if not more
> so).
> > They are involved with databases on a day-to-day basis instead of
> > while-a-piece-of-software-is-being-built-or-enhanced. The DBAs I've
> worked
> > with are often the experts and the developers the novices.
> > (BTW I'm primarily a developer not a DBA, although I have done both
> jobs!)
> > Nige
> > On 9 October 2012 16:59, Wes Freeman <freeman....@gmail.com> wrote:
> >> That makes sense. #1 is the most important--that's my biased opinion,
> >> anyway. ;)
> >> I think dba-type people could be another audience. They care less about
> >> how to use neo4j (although they need to know basics, and maybe even
> query
> >> tuning stuff), and care more about keeping it running and tuned from a
> >> server standpoint.
> >> Wes
> >> On Tue, Oct 9, 2012 at 11:33 AM, Duane Nickull
> >> <du...@technoracle-systems.com> wrote:
> >>> Wes:
> >>> This is sort of what I was referring to when I mentioned the audience
> is
> >>> very important for the course. I see 3-4 core audiences for courses:
> >>> Developers
> >>> Modelling people (UML / XML heads like myself)
> >>> Business People
> >>> Others (Educators, Oracle spies etc…. ;-)
> >>> Duane
> >>> ***********************************
> >>> Technoracle Advanced Systems Inc.
> >>> Consulting and Contracting; Proven Results!
> >>> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
> >>> b. http://technoracle.blogspot.com > >>> t. @duanechaos
> >>> "Don't fear the Graph! Embrace Neo4J"
> >>> From a developer perspective, I think it would be useful to show a
> survey
> >>> of the libraries used to interact with neo4j, such as yours, Nigel,
> along
> >>> with SpringData and a handful of others, ranked by number of stars on
> github
> >>> and posts in a user group, or some other metric. There could then be a
> video
> >>> going through a quick intro by an expert in that language (or, better
> yet,
> >>> the author of that library). After all, devs will be spending most of
> their
> >>> time dealing with that sort of code. Maybe one of the "classes/weeks"
> could
> >>> have the survey of a handful of libraries, and then the exercise could
> be
> >>> "pick a library in your language of choice to do..."
> >>> Just an idea.
> >>> Wes
> >>> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net>
> wrote:
> >>>> This is quite similar to a training course I recently put together
> for a
> >>>> London start-up. The first day covered graph theory, the Neo4j product
> >>>> itself and then delved deeply into Cypher. There were then a number of
> >>>> Cypher exercises which could all be carried out through the
> neo4j-shell.
> >>>> The second day talked about the server API and py2neo plus some best
> >>>> practice material and some more (domain-specific) exercises. There was
> >>>> nothing included on Java embedded usage as it wasn't required in this
> case.
> >>>> The Cypher workbook is generic though so if you're interested in using
> >>>> it, let me know and I'll send it over.
> >>>> Cheers
> >>>> Nigel
> >>>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
> >>>>> Hi,
> >>>>> Here are my thoughts on a Neo4j course. Essentially it focuses on
> >>>>> training the student in 'best practices' around domain modeling and
> >>>>> understanding the range of questions a graph database can answer
> through a
> >>>>> language such as Cypher.
> >>>>> Cheers,
> >>>>> John
> >>>>> Neo4j Course
> >>>>> Pre course setup
> >>>>> - install Neo4j server
> >>>>> I’m hoping that a lot of the course could be done with a standalone
> >>>>> server and Cypher. More advanced modules could require a programming
> >>>>> language such as Java.
> >>>>> Tools required:
> >>>>> - Standalone Neo4j server
> >>>>> Course Modules
> >>>>> - Domain modelling with a graph database
> >>>>> - Cypher
> >>>>> - Presentation
> >>>>> It seems to me that it is important to be able to model your problem
> >>>>> domain well and answer business questions from the model. Thus
> exercises
> >>>>> involving creating a model and querying it are a good place to start.
> >>>>> Perhaps the model is supplied to begin with and then students come
> up with
> >>>>> their own model for more advanced assignments.
> >>>>> Thus the student could download an assignment that has a create
> Cypher
> >>>>> statement that loads their Neo4j server with data. The student then
> uses the
> >>>>> WebAdmin tool to craft Cypher queries to answer the assignment
> questions.
> >>>>> To submit an assignment could simply be in Cypher - a create
> statement
> >>>>> and the statements that answer each of the assignment questions.
> This could
> >>>>> facilitate automatic marking I’m hoping. :)
> >>>>> Some topics in this section would be:
> >>>>> - Around data
> >>>>> - loading data into a Neo4j database
> >>>>> - altering the data
> >>>>> - adding further data
> >>>>> - indexing
> >>>>> - how to extract data from a RDBMS and load that into Neo4j (more
> >>>>> advanced)
> >>>>> - Around modeling
> >>>>> - how to model your domain
> >>>>> - how to handle time - e.g. via relationships (“owned” and “owns”) or
> >>>>> properties or both
> >>>>> - how to change models when it cannot answer a new business question
> >>>>> - best graph database practices
> >>>>> - Around querying (essentially a mini Cypher course)
> >>>>> - build up a series of Cypher queries answering more complex
> questions
> >>>>> - Can I answer all business queries with Cypher or do I need to know
> >>>>> another query mechanism?
> >>>>> The topics above enable the student to analyse their business domain,
> >>>>> create a model and query it to show the business the value of a graph
> >>>>> database approach. It would also teach them how to evolve their
> models as
> >>>>> required. As they have built a number of models and constructed a
> variety of
> >>>>> queries they should have gained confidence to present Neo4j to their
> >>>>> workplace.
> >>>>> - Presentation
> >>>>> - I see this as more advanced in that it requires more tooling, such
> as
> >>>>> Java, an IDE, a web server etc.
> >>>>> - How to write applications to access Neo4j and present the results
> in
> >>>>> a number of formats
> >>>>> - I’m guessing we would have to choose one framework, such as Node.js
> >>>>> and work with that
> >>>>> Other thoughts and questions
> >>>>> I see Neo4j being used in a couple of scenarios in my workplace.
> >>>>> Firstly as an ongoing storage that is nightly updated keeping it in
> sync
> >>>>> with a relational database, Business Intelligence like. Secondly for
> >>>>> creation of on the fly models loaded with a sample of data and then
> used to
> >>>>> answer business questions.
On Wed, Oct 10, 2012 at 5:57 AM, Stevo Slavić <ssla...@gmail.com> wrote:
> Maybe try sending email to corpor...@coursera.org (more contact emails at
> https://www.coursera.org/about/contact )
> On about page ( https://www.coursera.org/about ) they write that they
> partner with universities. Forgive me, but I don't know if any of neo4j
> staff/committers are active professors on some college - if they are, maybe
> try establishing connection with coursera through college.
> Kind regards,
> Stevo Slavic.
> On Wed, Oct 10, 2012 at 11:49 AM, Peter Neubauer
> <peter.neuba...@neotechnology.com> wrote:
>> Guys,
>> just reached out to @cousera on whom to contact for a course, but have
>> not heard back. Does anyone know the process for making this happen
>> there or on Udemy etc?
>> On Tue, Oct 9, 2012 at 9:07 PM, Duane Nickull
>> <du...@technoracle-systems.com> wrote:
>> > To me , DBA = dev.
>> > The best thing is that this is a community based effort. My course will
>> > be
>> > open source as I have done with all others.
>> > Duane
>> > ***********************************
>> > Technoracle Advanced Systems Inc.
>> > Consulting and Contracting; Proven Results!
>> > i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>> > b. http://technoracle.blogspot.com >> > t. @duanechaos
>> > "Don't fear the Graph! Embrace Neo4J"
>> > Actually, here I think DBAs are just as important as devs (if not more
>> > so).
>> > They are involved with databases on a day-to-day basis instead of
>> > while-a-piece-of-software-is-being-built-or-enhanced. The DBAs I've
>> > worked
>> > with are often the experts and the developers the novices.
>> > (BTW I'm primarily a developer not a DBA, although I have done both
>> > jobs!)
>> > Nige
>> > On 9 October 2012 16:59, Wes Freeman <freeman....@gmail.com> wrote:
>> >> That makes sense. #1 is the most important--that's my biased opinion,
>> >> anyway. ;)
>> >> I think dba-type people could be another audience. They care less about
>> >> how to use neo4j (although they need to know basics, and maybe even
>> >> query
>> >> tuning stuff), and care more about keeping it running and tuned from a
>> >> server standpoint.
>> >> Wes
>> >> On Tue, Oct 9, 2012 at 11:33 AM, Duane Nickull
>> >> <du...@technoracle-systems.com> wrote:
>> >>> Wes:
>> >>> This is sort of what I was referring to when I mentioned the audience
>> >>> is
>> >>> very important for the course. I see 3-4 core audiences for courses:
>> >>> Developers
>> >>> Modelling people (UML / XML heads like myself)
>> >>> Business People
>> >>> Others (Educators, Oracle spies etc…. ;-)
>> >>> Duane
>> >>> ***********************************
>> >>> Technoracle Advanced Systems Inc.
>> >>> Consulting and Contracting; Proven Results!
>> >>> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>> >>> b. http://technoracle.blogspot.com >> >>> t. @duanechaos
>> >>> "Don't fear the Graph! Embrace Neo4J"
>> >>> From a developer perspective, I think it would be useful to show a
>> >>> survey
>> >>> of the libraries used to interact with neo4j, such as yours, Nigel,
>> >>> along
>> >>> with SpringData and a handful of others, ranked by number of stars on
>> >>> github
>> >>> and posts in a user group, or some other metric. There could then be a
>> >>> video
>> >>> going through a quick intro by an expert in that language (or, better
>> >>> yet,
>> >>> the author of that library). After all, devs will be spending most of
>> >>> their
>> >>> time dealing with that sort of code. Maybe one of the "classes/weeks"
>> >>> could
>> >>> have the survey of a handful of libraries, and then the exercise could
>> >>> be
>> >>> "pick a library in your language of choice to do..."
>> >>> Just an idea.
>> >>> Wes
>> >>> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net>
>> >>> wrote:
>> >>>> This is quite similar to a training course I recently put together
>> >>>> for a
>> >>>> London start-up. The first day covered graph theory, the Neo4j
>> >>>> product
>> >>>> itself and then delved deeply into Cypher. There were then a number
>> >>>> of
>> >>>> Cypher exercises which could all be carried out through the
>> >>>> neo4j-shell.
>> >>>> The second day talked about the server API and py2neo plus some best
>> >>>> practice material and some more (domain-specific) exercises. There
>> >>>> was
>> >>>> nothing included on Java embedded usage as it wasn't required in this
>> >>>> case.
>> >>>> The Cypher workbook is generic though so if you're interested in
>> >>>> using
>> >>>> it, let me know and I'll send it over.
>> >>>> Cheers
>> >>>> Nigel
>> >>>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>> >>>>> Hi,
>> >>>>> Here are my thoughts on a Neo4j course. Essentially it focuses on
>> >>>>> training the student in 'best practices' around domain modeling and
>> >>>>> understanding the range of questions a graph database can answer
>> >>>>> through a
>> >>>>> language such as Cypher.
>> >>>>> Cheers,
>> >>>>> John
>> >>>>> Neo4j Course
>> >>>>> Pre course setup
>> >>>>> - install Neo4j server
>> >>>>> I’m hoping that a lot of the course could be done with a standalone
>> >>>>> server and Cypher. More advanced modules could require a programming
>> >>>>> language such as Java.
>> >>>>> Tools required:
>> >>>>> - Standalone Neo4j server
>> >>>>> Course Modules
>> >>>>> - Domain modelling with a graph database
>> >>>>> - Cypher
>> >>>>> - Presentation
>> >>>>> It seems to me that it is important to be able to model your problem
>> >>>>> domain well and answer business questions from the model. Thus
>> >>>>> exercises
>> >>>>> involving creating a model and querying it are a good place to
>> >>>>> start.
>> >>>>> Perhaps the model is supplied to begin with and then students come
>> >>>>> up with
>> >>>>> their own model for more advanced assignments.
>> >>>>> Thus the student could download an assignment that has a create
>> >>>>> Cypher
>> >>>>> statement that loads their Neo4j server with data. The student then
>> >>>>> uses the
>> >>>>> WebAdmin tool to craft Cypher queries to answer the assignment
>> >>>>> questions.
>> >>>>> To submit an assignment could simply be in Cypher - a create
>> >>>>> statement
>> >>>>> and the statements that answer each of the assignment questions.
>> >>>>> This could
>> >>>>> facilitate automatic marking I’m hoping. :)
>> >>>>> Some topics in this section would be:
>> >>>>> - Around data
>> >>>>> - loading data into a Neo4j database
>> >>>>> - altering the data
>> >>>>> - adding further data
>> >>>>> - indexing
>> >>>>> - how to extract data from a RDBMS and load that into Neo4j (more
>> >>>>> advanced)
>> >>>>> - Around modeling
>> >>>>> - how to model your domain
>> >>>>> - how to handle time - e.g. via relationships (“owned” and “owns”)
>> >>>>> or
>> >>>>> properties or both
>> >>>>> - how to change models when it cannot answer a new business question
>> >>>>> - best graph database practices
>> >>>>> - Around querying (essentially a mini Cypher course)
>> >>>>> - build up a series of Cypher queries answering more complex
>> >>>>> questions
>> >>>>> - Can I answer all business queries with Cypher or do I need to know
>> >>>>> another query mechanism?
>> >>>>> The topics above enable the student to analyse their business
>> >>>>> domain,
>> >>>>> create a model and query it to show the business the value of a
>> >>>>> graph
>> >>>>> database approach. It would also teach them how to evolve their
>> >>>>> models as
>> >>>>> required. As they have built a number of models and constructed a
>> >>>>> variety of
>> >>>>> queries they should have gained confidence to present Neo4j to their
>> >>>>> workplace.
>> >>>>> - Presentation
>> >>>>> - I see this as more advanced in that it requires more tooling, such
>> >>>>> as
>> >>>>> Java, an IDE, a web server etc.
>> >>>>> - How to write applications to access Neo4j and present the results
>> >>>>> in
>> >>>>> a number of formats
>> >>>>> - I’m guessing we would have to choose one framework, such as
>> >>>>> Node.js
>> >>>>> and work with that
>> >>>>> Other thoughts and questions
>> >>>>> I see Neo4j being used in a couple of scenarios in my workplace.
>> >>>>> Firstly as an ongoing storage that is nightly updated keeping it in
>> >>>>> sync
>> >>>>> with a relational database, Business Intelligence like. Secondly
I have contacts at Udemy.
***********************************
Technoracle Advanced Systems Inc.
Consulting and Contracting; Proven Results!
i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
b. http://technoracle.blogspot.com t. @duanechaos
"Don't fear the Graph! Embrace Neo4J"
On 2012-10-10 5:18 PM, "Javier de la Rosa" <ver...@gmail.com> wrote:
>On Wed, Oct 10, 2012 at 5:57 AM, Stevo Slaviæ <ssla...@gmail.com> wrote:
>> Maybe try sending email to corpor...@coursera.org (more contact emails
>>at
>> https://www.coursera.org/about/contact )
>> On about page ( https://www.coursera.org/about ) they write that they
>> partner with universities. Forgive me, but I don't know if any of neo4j
>> staff/committers are active professors on some college - if they are,
>>maybe
>> try establishing connection with coursera through college.
>> Kind regards,
>> Stevo Slavic.
>> On Wed, Oct 10, 2012 at 11:49 AM, Peter Neubauer
>> <peter.neuba...@neotechnology.com> wrote:
>>> Guys,
>>> just reached out to @cousera on whom to contact for a course, but have
>>> not heard back. Does anyone know the process for making this happen
>>> there or on Udemy etc?
>>> On Tue, Oct 9, 2012 at 9:07 PM, Duane Nickull
>>> <du...@technoracle-systems.com> wrote:
>>> > To me , DBA = dev.
>>> > The best thing is that this is a community based effort. My course
>>>will
>>> > be
>>> > open source as I have done with all others.
>>> > Duane
>>> > ***********************************
>>> > Technoracle Advanced Systems Inc.
>>> > Consulting and Contracting; Proven Results!
>>> > i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>>> > b. http://technoracle.blogspot.com >>> > t. @duanechaos
>>> > "Don't fear the Graph! Embrace Neo4J"
>>> > Actually, here I think DBAs are just as important as devs (if not
>>>more
>>> > so).
>>> > They are involved with databases on a day-to-day basis instead of
>>> > while-a-piece-of-software-is-being-built-or-enhanced. The DBAs I've
>>> > worked
>>> > with are often the experts and the developers the novices.
>>> > (BTW I'm primarily a developer not a DBA, although I have done both
>>> > jobs!)
>>> > Nige
>>> > On 9 October 2012 16:59, Wes Freeman <freeman....@gmail.com> wrote:
>>> >> That makes sense. #1 is the most important--that's my biased
>>>opinion,
>>> >> anyway. ;)
>>> >> I think dba-type people could be another audience. They care less
>>>about
>>> >> how to use neo4j (although they need to know basics, and maybe even
>>> >> query
>>> >> tuning stuff), and care more about keeping it running and tuned
>>>from a
>>> >> server standpoint.
>>> >> Wes
>>> >> On Tue, Oct 9, 2012 at 11:33 AM, Duane Nickull
>>> >> <du...@technoracle-systems.com> wrote:
>>> >>> Wes:
>>> >>> This is sort of what I was referring to when I mentioned the
>>>audience
>>> >>> is
>>> >>> very important for the course. I see 3-4 core audiences for
>>>courses:
>>> >>> Developers
>>> >>> Modelling people (UML / XML heads like myself)
>>> >>> Business People
>>> >>> Others (Educators, Oracle spies etc.... ;-)
>>> >>> Duane
>>> >>> ***********************************
>>> >>> Technoracle Advanced Systems Inc.
>>> >>> Consulting and Contracting; Proven Results!
>>> >>> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>>> >>> b. http://technoracle.blogspot.com >>> >>> t. @duanechaos
>>> >>> "Don't fear the Graph! Embrace Neo4J"
>>> >>> From a developer perspective, I think it would be useful to show a
>>> >>> survey
>>> >>> of the libraries used to interact with neo4j, such as yours, Nigel,
>>> >>> along
>>> >>> with SpringData and a handful of others, ranked by number of stars
>>>on
>>> >>> github
>>> >>> and posts in a user group, or some other metric. There could then
>>>be a
>>> >>> video
>>> >>> going through a quick intro by an expert in that language (or,
>>>better
>>> >>> yet,
>>> >>> the author of that library). After all, devs will be spending most
>>>of
>>> >>> their
>>> >>> time dealing with that sort of code. Maybe one of the
>>>"classes/weeks"
>>> >>> could
>>> >>> have the survey of a handful of libraries, and then the exercise
>>>could
>>> >>> be
>>> >>> "pick a library in your language of choice to do..."
>>> >>> Just an idea.
>>> >>> Wes
>>> >>> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net>
>>> >>> wrote:
>>> >>>> This is quite similar to a training course I recently put together
>>> >>>> for a
>>> >>>> London start-up. The first day covered graph theory, the Neo4j
>>> >>>> product
>>> >>>> itself and then delved deeply into Cypher. There were then a
>>>number
>>> >>>> of
>>> >>>> Cypher exercises which could all be carried out through the
>>> >>>> neo4j-shell.
>>> >>>> The second day talked about the server API and py2neo plus some
>>>best
>>> >>>> practice material and some more (domain-specific) exercises. There
>>> >>>> was
>>> >>>> nothing included on Java embedded usage as it wasn't required in
>>>this
>>> >>>> case.
>>> >>>> The Cypher workbook is generic though so if you're interested in
>>> >>>> using
>>> >>>> it, let me know and I'll send it over.
>>> >>>> Cheers
>>> >>>> Nigel
>>> >>>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>>> >>>>> Hi,
>>> >>>>> Here are my thoughts on a Neo4j course. Essentially it focuses on
>>> >>>>> training the student in 'best practices' around domain modeling
>>>and
>>> >>>>> understanding the range of questions a graph database can answer
>>> >>>>> through a
>>> >>>>> language such as Cypher.
>>> >>>>> Cheers,
>>> >>>>> John
>>> >>>>> Neo4j Course
>>> >>>>> Pre course setup
>>> >>>>> - install Neo4j server
>>> >>>>> I'm hoping that a lot of the course could be done with a
>>>standalone
>>> >>>>> server and Cypher. More advanced modules could require a
>>>programming
>>> >>>>> language such as Java.
>>> >>>>> Tools required:
>>> >>>>> - Standalone Neo4j server
>>> >>>>> Course Modules
>>> >>>>> - Domain modelling with a graph database
>>> >>>>> - Cypher
>>> >>>>> - Presentation
>>> >>>>> It seems to me that it is important to be able to model your
>>>problem
>>> >>>>> domain well and answer business questions from the model. Thus
>>> >>>>> exercises
>>> >>>>> involving creating a model and querying it are a good place to
>>> >>>>> start.
>>> >>>>> Perhaps the model is supplied to begin with and then students
>>>come
>>> >>>>> up with
>>> >>>>> their own model for more advanced assignments.
>>> >>>>> Thus the student could download an assignment that has a create
>>> >>>>> Cypher
>>> >>>>> statement that loads their Neo4j server with data. The student
>>>then
>>> >>>>> uses the
>>> >>>>> WebAdmin tool to craft Cypher queries to answer the assignment
>>> >>>>> questions.
>>> >>>>> To submit an assignment could simply be in Cypher - a create
>>> >>>>> statement
>>> >>>>> and the statements that answer each of the assignment questions.
>>> >>>>> This could
>>> >>>>> facilitate automatic marking I'm hoping. :)
>>> >>>>> Some topics in this section would be:
>>> >>>>> - Around data
>>> >>>>> - loading data into a Neo4j database
>>> >>>>> - altering the data
>>> >>>>> - adding further data
>>> >>>>> - indexing
>>> >>>>> - how to extract data from a RDBMS and load that into Neo4j (more
>>> >>>>> advanced)
>>> >>>>> - Around modeling
>>> >>>>> - how to model your domain
>>> >>>>> - how to handle time - e.g. via relationships ("owned" and
>>>"owns")
>>> >>>>> or
>>> >>>>> properties or both
>>> >>>>> - how to change models when it cannot answer a new business
>>>question
>>> >>>>> - best graph database practices
>>> >>>>> - Around querying (essentially a mini Cypher course)
>>> >>>>> - build up a series of Cypher queries answering more complex
>>> >>>>> questions
>>> >>>>> - Can I answer all business queries with Cypher or do I need to
>>>know
>>> >>>>> another query mechanism?
>>> >>>>> The topics above enable the student to analyse their business
>>> >>>>> domain,
>>> >>>>> create a model and query it to show the business the value of a
>>> >>>>> graph
>>> >>>>> database approach. It would also teach them how to evolve their
>>> >>>>> models as
>>> >>>>> required. As they have built a number of models and constructed a
>>> >>>>> variety of
>>> >>>>> queries they should have gained confidence to present Neo4j to
>>>their
>>> >>>>> workplace.
> On Wed, Oct 10, 2012 at 5:57 AM, Stevo Slavić <ssla...@gmail.com> wrote:
>> Maybe try sending email to corpor...@coursera.org (more contact emails at
>> https://www.coursera.org/about/contact )
>> On about page ( https://www.coursera.org/about ) they write that they
>> partner with universities. Forgive me, but I don't know if any of neo4j
>> staff/committers are active professors on some college - if they are, maybe
>> try establishing connection with coursera through college.
>> Kind regards,
>> Stevo Slavic.
>> On Wed, Oct 10, 2012 at 11:49 AM, Peter Neubauer
>> <peter.neuba...@neotechnology.com> wrote:
>>> Guys,
>>> just reached out to @cousera on whom to contact for a course, but have
>>> not heard back. Does anyone know the process for making this happen
>>> there or on Udemy etc?
>>> On Tue, Oct 9, 2012 at 9:07 PM, Duane Nickull
>>> <du...@technoracle-systems.com> wrote:
>>> > To me , DBA = dev.
>>> > The best thing is that this is a community based effort. My course will
>>> > be
>>> > open source as I have done with all others.
>>> > Duane
>>> > ***********************************
>>> > Technoracle Advanced Systems Inc.
>>> > Consulting and Contracting; Proven Results!
>>> > i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>>> > b. http://technoracle.blogspot.com >>> > t. @duanechaos
>>> > "Don't fear the Graph! Embrace Neo4J"
>>> > Actually, here I think DBAs are just as important as devs (if not more
>>> > so).
>>> > They are involved with databases on a day-to-day basis instead of
>>> > while-a-piece-of-software-is-being-built-or-enhanced. The DBAs I've
>>> > worked
>>> > with are often the experts and the developers the novices.
>>> > (BTW I'm primarily a developer not a DBA, although I have done both
>>> > jobs!)
>>> > Nige
>>> > On 9 October 2012 16:59, Wes Freeman <freeman....@gmail.com> wrote:
>>> >> That makes sense. #1 is the most important--that's my biased opinion,
>>> >> anyway. ;)
>>> >> I think dba-type people could be another audience. They care less about
>>> >> how to use neo4j (although they need to know basics, and maybe even
>>> >> query
>>> >> tuning stuff), and care more about keeping it running and tuned from a
>>> >> server standpoint.
>>> >> Wes
>>> >> On Tue, Oct 9, 2012 at 11:33 AM, Duane Nickull
>>> >> <du...@technoracle-systems.com> wrote:
>>> >>> Wes:
>>> >>> This is sort of what I was referring to when I mentioned the audience
>>> >>> is
>>> >>> very important for the course. I see 3-4 core audiences for courses:
>>> >>> Developers
>>> >>> Modelling people (UML / XML heads like myself)
>>> >>> Business People
>>> >>> Others (Educators, Oracle spies etc…. ;-)
>>> >>> Duane
>>> >>> ***********************************
>>> >>> Technoracle Advanced Systems Inc.
>>> >>> Consulting and Contracting; Proven Results!
>>> >>> i. Neo4J, PDF, Java, LiveCycle ES, Flex, AIR, CQ5 & Mobile
>>> >>> b. http://technoracle.blogspot.com >>> >>> t. @duanechaos
>>> >>> "Don't fear the Graph! Embrace Neo4J"
>>> >>> From a developer perspective, I think it would be useful to show a
>>> >>> survey
>>> >>> of the libraries used to interact with neo4j, such as yours, Nigel,
>>> >>> along
>>> >>> with SpringData and a handful of others, ranked by number of stars on
>>> >>> github
>>> >>> and posts in a user group, or some other metric. There could then be a
>>> >>> video
>>> >>> going through a quick intro by an expert in that language (or, better
>>> >>> yet,
>>> >>> the author of that library). After all, devs will be spending most of
>>> >>> their
>>> >>> time dealing with that sort of code. Maybe one of the "classes/weeks"
>>> >>> could
>>> >>> have the survey of a handful of libraries, and then the exercise could
>>> >>> be
>>> >>> "pick a library in your language of choice to do..."
>>> >>> Just an idea.
>>> >>> Wes
>>> >>> On Tue, Oct 9, 2012 at 5:59 AM, Nigel Small <ni...@nigelsmall.net>
>>> >>> wrote:
>>> >>>> This is quite similar to a training course I recently put together
>>> >>>> for a
>>> >>>> London start-up. The first day covered graph theory, the Neo4j
>>> >>>> product
>>> >>>> itself and then delved deeply into Cypher. There were then a number
>>> >>>> of
>>> >>>> Cypher exercises which could all be carried out through the
>>> >>>> neo4j-shell.
>>> >>>> The second day talked about the server API and py2neo plus some best
>>> >>>> practice material and some more (domain-specific) exercises. There
>>> >>>> was
>>> >>>> nothing included on Java embedded usage as it wasn't required in this
>>> >>>> case.
>>> >>>> The Cypher workbook is generic though so if you're interested in
>>> >>>> using
>>> >>>> it, let me know and I'll send it over.
>>> >>>> Cheers
>>> >>>> Nigel
>>> >>>> On 9 October 2012 09:43, JohnM <jxmit...@gmail.com> wrote:
>>> >>>>> Hi,
>>> >>>>> Here are my thoughts on a Neo4j course. Essentially it focuses on
>>> >>>>> training the student in 'best practices' around domain modeling and
>>> >>>>> understanding the range of questions a graph database can answer
>>> >>>>> through a
>>> >>>>> language such as Cypher.
>>> >>>>> Cheers,
>>> >>>>> John
>>> >>>>> Neo4j Course
>>> >>>>> Pre course setup
>>> >>>>> - install Neo4j server
>>> >>>>> I’m hoping that a lot of the course could be done with a standalone
>>> >>>>> server and Cypher. More advanced modules could require a programming
>>> >>>>> language such as Java.
>>> >>>>> Tools required:
>>> >>>>> - Standalone Neo4j server
>>> >>>>> Course Modules
>>> >>>>> - Domain modelling with a graph database
>>> >>>>> - Cypher
>>> >>>>> - Presentation
>>> >>>>> It seems to me that it is important to be able to model your problem
>>> >>>>> domain well and answer business questions from the model. Thus
>>> >>>>> exercises
>>> >>>>> involving creating a model and querying it are a good place to
>>> >>>>> start.
>>> >>>>> Perhaps the model is supplied to begin with and then students come
>>> >>>>> up with
>>> >>>>> their own model for more advanced assignments.
>>> >>>>> Thus the student could download an assignment that has a create
>>> >>>>> Cypher
>>> >>>>> statement that loads their Neo4j server with data. The student then
>>> >>>>> uses the
>>> >>>>> WebAdmin tool to craft Cypher queries to answer the assignment
>>> >>>>> questions.
>>> >>>>> To submit an assignment could simply be in Cypher - a create
>>> >>>>> statement
>>> >>>>> and the statements that answer each of the assignment questions.
>>> >>>>> This could
>>> >>>>> facilitate automatic marking I’m hoping. :)
>>> >>>>> Some topics in this section would be:
>>> >>>>> - Around data
>>> >>>>> - loading data into a Neo4j database
>>> >>>>> - altering the data
>>> >>>>> - adding further data
>>> >>>>> - indexing
>>> >>>>> - how to extract data from a RDBMS and load that into Neo4j (more
>>> >>>>> advanced)
>>> >>>>> - Around modeling
>>> >>>>> - how to model your domain
>>> >>>>> - how to handle time - e.g. via relationships (“owned” and “owns”)
>>> >>>>> or
>>> >>>>> properties or both
>>> >>>>> - how to change models when it cannot answer a new business question
>>> >>>>> - best graph database practices
>>> >>>>> - Around querying (essentially a mini Cypher course)
>>> >>>>> - build up a series of Cypher queries answering more complex
>>> >>>>> questions
>>> >>>>> - Can I answer all business queries with Cypher or do I need to know
>>> >>>>> another query mechanism?
>>> >>>>> The topics above enable the student to analyse their business
>>> >>>>> domain,
>>> >>>>> create a model and query it to show the business the value of a
>>> >>>>> graph
>>> >>>>> database approach. It would also teach them how to evolve their
>>> >>>>> models as
>>> >>>>> required. As they have built a number of models and constructed a
>>> >>>>> variety of
>>> >>>>> queries they should have gained confidence to present Neo4j to their
>>> >>>>> workplace.
I have attached the Cypher workbook which I put together last month and
which is pretty generic. In case you can find anything useful in them, I've
also attached the slides that preceded that session which cover an
introduction to Cypher; specifically, you will want slides 45 to 86.
Hope this helps
Cheers
Nige
On 11 October 2012 10:52, JohnM <jxmit...@gmail.com> wrote:
On Thursday, October 11, 2012 9:44:09 PM UTC+11, Nigel Small wrote:
> Hi John
> I have attached the Cypher workbook which I put together last month and > which is pretty generic. In case you can find anything useful in them, I've > also attached the slides that preceded that session which cover an > introduction to Cypher; specifically, you will want slides 45 to 86.
> Hope this helps
> Cheers > Nige
> On 11 October 2012 10:52, JohnM <jxmi...@gmail.com <javascript:>> wrote:
>> Hi Nigel,
>> That's a great offer, I would love to see your material.